home *** CD-ROM | disk | FTP | other *** search
/ United Public Domain Gold 2 / United Public Domain Gold 2.iso / utilities / pu630.dms / pu630.adf / termRexx.doc < prev    next >
Text File  |  1994-07-15  |  76KB  |  3,459 lines

  1.    `term' 4.0 - A terminal program for Amiga computers
  2.  
  3.    Copyright © 1990-1994 Olaf Barthel
  4.  
  5.    You may make and distribute verbatim copies of this documentation if
  6. the contents are unchanged or the author has agreed to any changes made.
  7.  
  8.    No guarantee of any kind is given that the program described in this
  9. document are 100% reliable. You are using this material on your own
  10. risk.
  11.  
  12.    The program `term' and the data received/sent by it must not be used
  13. for the following purposes:
  14.  
  15.   1. The construction, development, production or testing of weapons or
  16.      weapon systems of any kind.
  17.  
  18.   2. The construction, development, production or use of
  19.      plants/installations which include the processing of
  20.      radioactive/fissionable material.
  21.  
  22.   3. The training of persons to deal with the abovesaid actions.
  23.  
  24.  
  25.    Listen to your conscience.
  26.  
  27. Changes
  28. *******
  29.  
  30.    Previous `term' releases would use a different ARexx host interface
  31. implementation.  In order to conform to Commodore-endorsed user
  32. interface style guidelines it was redesigned from scratch for version
  33. 3.0. The design and implementation of the ARexx host interface was
  34. suggested by the `Amiga User Interface Style Guide' and strongly
  35. influenced by Martin Taillefer's `TurboText' ARexx host interface.
  36.  
  37.    Not a simple command has `survived' the revision, the new
  38. implementation is no longer compatible with its predecessors, so
  39. existing ARexx scripts will have to be adapted or even entirely
  40. rewritten.
  41.  
  42.    `term' no longer distinguishes explicitely between asynchronous and
  43. synchronous commands (i.e. commands which force the main program to
  44. wait and commands which need not bother the main program as the ARexx
  45. handler process is able to execute them). As of this writing it is safe
  46. to assume that almost any command will be processed by the main
  47. program, exceptions are noted.
  48.  
  49. term and ARexx
  50. **************
  51.  
  52.    This document describes the ARexx(tm) (1) commands supported by
  53. `term'.  This is not intended to be an introduction to the language
  54. itself.  Rexx was developed by Mike F.  Cowlishaw on an IBM/SP system
  55. and ported to the Amiga by William S.  Hawes.
  56.  
  57.    ARexx (or Amiga Rexx) is a commercial product which is included with
  58. the AmigaDOS 2.0 Enhancer Package.  If you need a good introduction and
  59. description of the language, try to get a hold of the book `The REXX
  60. Language A Practical Approach to Programming' by M.F.  Cowlishaw,
  61. available from Prentice-Hall International, Inc.
  62.  
  63.    The section entitled Command execution gives a brief introduction
  64. how to write and run ARexx commands. For more information refer to the
  65. Release 2 Users Manual `Using the System Software'.
  66.  
  67.    By default `term' opens an ARexx host by the name of `TERM'
  68. (accessable via `address term').  If more than a single `term' process
  69. is running on your machine, the name of the host will be adapted to the
  70. number of the program (i.e.  the first programm will use `TERM', the
  71. second one will use `TERM.1', the third one `TERM.2', etc.). The
  72. default name can be overridden by invoking the program with certain
  73. parameters (see main program documentation). The name of the host is
  74. displayed in the status window (see main program documentation).
  75.  
  76.    ---------- Footnotes ----------
  77.  
  78.    (1)  ARexx is a registered trademark of Wishful Thinking Development
  79. Corp.
  80.  
  81. Command execution
  82. =================
  83.  
  84.    In order to invoke any command supported by `term' one usually has
  85. to address the host explicitely:
  86.  
  87.      /* Address the `term' host. */
  88.      
  89.      ADDRESS term
  90.      
  91.      /* Invoke the `beepscreen' commmand. */
  92.      
  93.      BEEPSCREEN
  94.  
  95.    However, if an ARexx script is invoked directly by the `term' main
  96. program, the script will by default address the main program it was
  97. invoked by.
  98.  
  99.    Most commands will return results or error codes on failure. To
  100. enable result codes, one has to use the `options results' command. The
  101. results returned by commands will be placed in the `result' variable:
  102.  
  103.      /* We assume that the script will address the host it was invoked from.
  104.       *
  105.       * Enable command results.
  106.       */
  107.      
  108.      OPTIONS RESULTS
  109.      
  110.      /* Request a string from the user. */
  111.      
  112.      REQUESTSTRING DEFAULT 'anything' PROMPT 'Enter anything'
  113.      
  114.      /* Did the user cancel the requester? */
  115.      
  116.      IF rc ~= 0 THEN
  117.         SAY 'user cancelled requester'
  118.      ELSE
  119.         SAY result /* Output the result . */
  120.  
  121.    Failure codes will always be returned in the `rc' variable (see
  122. previous example).
  123.  
  124.    In case of failure (variable `rc' >= 10), `term' will leave an error
  125. code in the `term.lasterror' variable:
  126.  
  127.      /* Enable command results. */
  128.      
  129.      OPTIONS RESULTS
  130.      
  131.      /* Produce an error by not supplying any arguments. */
  132.      
  133.      STOPBITS
  134.      
  135.      /* Display the error code. */
  136.      
  137.      SAY term.lasterror
  138.  
  139.    Rexx tries to tokenize any command parameters, this process involves
  140. promoting them to all upper case letters and checking for illegal
  141. characters. This feature inhibits the use of the `:' (colon) and blank
  142. space characters in parameter names unless the corresponding arguments
  143. are enclosed in quotes. To make things even more complicated, the
  144. parser will not always accept parameters to contain blank spaces. If a
  145. command template accepts the entire command line (such as `TEXT/K/F') a
  146. parameter can include any number of blank spaces. A command template to
  147. accept just a single parameter (such as `TEXT/K') requires double
  148. quotes if blank spaces are included. Text such as `tea or coffee?' thus
  149. becomes `'"tea or coffee?"''.
  150.  
  151.      /* The following command will fail to send the file `ram:foobar' as the colon
  152.       * in the path name will cause an error:
  153.       */
  154.      
  155.      SENDFILE ram:foobar
  156.      
  157.      /* Here is how to do it correctly: */
  158.      
  159.      SENDFILE 'ram:foobar'
  160.      
  161.      /* The following command will fail to send the file `foo bar' as the
  162.       * file name is treated as two single files:
  163.       */
  164.      
  165.      SENDFILE foo bar
  166.      
  167.      /* The next line will still fail to send the file `foo bar'
  168.       * as the ARexx parser will split the argument into two
  169.       * parameters.
  170.       */
  171.      
  172.      SENDFILE 'foo bar'
  173.      
  174.      /* Here is how to do it correctly: */
  175.      
  176.      SENDFILE '"foo bar"'
  177.      
  178.      /* The following command will not transmit the string `Hello sailor'
  179.       * across the serial line as the single words will be capitalized,
  180.       * they will be transmitted as `HELLO SAILOR':
  181.       */
  182.      
  183.      SEND Hello sailor
  184.      
  185.      /* Here is how to do it correctly: */
  186.      
  187.      SEND 'Hello sailor'
  188.  
  189. Stopping a command
  190. ******************
  191.  
  192.    Programs and commands sometimes fail to do what the user is expecting
  193. them to do which makes it necessary to bring program/command execution
  194. to a stop. A common ARexx script to call no external functions or host
  195. commands one can be halted in the following ways:
  196.  
  197.   1. Executing the `HI' command (located in the `SYS:rexxc' drawer)
  198.      from Shell. This command will attempt stop *all* currently running
  199.      ARexx scripts.
  200.  
  201.   2. If the ARexx script to be executed runs in an environment to sport
  202.      an output window, activate the window and press the `Control + C'
  203.      keys.  A break signal will be sent to the ARexx script, causing it
  204.      to stop as soon as possible.
  205.  
  206.  
  207.    With host environments such as `term' it may not always be possible
  208. to abort a command using the simple measures described above. As for
  209. `term' any command to wait (such as the READ, DELAY or WAIT commands)
  210. can be aborted by sending `term' itself a break signal in the following
  211. fashion:
  212.  
  213.   1. If the `term' program is still attached to a Shell output window,
  214.      activate the window and press the `Control + D' keys.
  215.  
  216.   2. If the `term' program was invoked from a Shell but is no longer
  217.      attached to it, enter `status command term' from Shell, remember
  218.      the number printed, then enter `break <number>' with `<number>'
  219.      being the number returned by the `status' command.
  220.  
  221.   3. Press the hotkey combination configured in the program hotkey
  222.      settings (see main program documentation). The default is `Right
  223.      Shift + Left Shift + Escape'. This will cause a break signal to be
  224.      sent to the `term' program.
  225.  
  226.  
  227. Commands
  228. ********
  229.  
  230.    The commands supported by `term' are listed in a table of the
  231. following form:
  232.  
  233. `Format:'
  234.      The command name with its possible calling parameters. In this
  235.      table parameters are enclosed in brackets and braces, separated by
  236.      commas and vertical bars; *do not type these special characters
  237.      along with the parameters!*:
  238.  
  239.     `< > (Angle brackets)'
  240.           Angle brackets enclose parameters whose contents *must not*
  241.           be omitted in order to make the command work properly.
  242.  
  243.     `[ ] (Square brackets)'
  244.           Square brackets enclose optional parameters.
  245.  
  246.     `{ } (Curly braces)'
  247.           Curly braces enclose items which can be repeated a number of
  248.           times, such as file name lists.
  249.  
  250.     `| (Vertical bar)'
  251.           Vertical bars separate alternative, mutually exclusive
  252.           options.
  253.  
  254.     `, (Comma)'
  255.           Commas separate multiple applicable options.
  256.  
  257. `Template:'
  258.      The command template, similar to the command templates employed by
  259.      AmigaDOS Shell commands.  Possible templates are:
  260.  
  261.     `<Parameter>/A'
  262.           The parameter must always be included in order to get
  263.           accepted.
  264.  
  265.     `<Option>/K'
  266.           The option's keyword must be given.
  267.  
  268.     `<Option>/S'
  269.           This option works as a switch. If this option keyword is
  270.           included the switch is on, else it is off.
  271.  
  272.     `<Option>/N'
  273.           A numeric parameter is expected.
  274.  
  275.     `<Option>/M'
  276.           Multiple parameters are accepted.
  277.  
  278.     `<Text>/F'
  279.           The text must be the final parameter on the command line.
  280.  
  281.     `, (Comma)'
  282.           Indicates that the command takes no parameters.
  283.  
  284. `Purpose:'
  285.      Briefly describes what the command will do.
  286.  
  287. `Specifications:'
  288.      Describes the command and its possible uses in more detail.
  289.  
  290. `Result:'
  291.      The type of the command result code if any.
  292.  
  293. `Warning:'
  294.      If the command can return with a warning and when.
  295.  
  296. `Example:'
  297.      An example code fragment to illustrate how to use the command.
  298.      Commands and keywords are given in upper case, the names of
  299.      variables and command arguments are given in lower case. Where a
  300.      single command line would not fit into a single line on the
  301.      screen, an ellipsis ('...') is meant to join the broken line.
  302.  
  303.    Table of commands in alphabetical order:
  304.  
  305.    Table of commands in functional groups:
  306.  
  307.    Commands dealing with text buffer and capturing
  308.  
  309.    Commands dealing with serial I/O
  310.  
  311.    Commands dealing with lists
  312.  
  313.    Commands dealing with the clipboard
  314.  
  315.    Commands dealing with file transfers
  316.  
  317.    Commands dealing with terminal I/O
  318.  
  319.    Commands dealing with windows and requesters
  320.  
  321.    Commands dealing with program attributes
  322.  
  323.    Commands dealing with program execution
  324.  
  325.    Commands dealing with file I/O
  326.  
  327.    Miscellaneous commands
  328.  
  329. The ACTIVATE command
  330. ====================
  331.  
  332. `Format:'
  333.      ACTIVATE
  334.  
  335. `Template:'
  336.      ,
  337.  
  338. `Purpose:'
  339.      De-iconifies the program, brings the main window to the front and
  340.      makes it active.
  341.  
  342. `Specifications:'
  343.      The program can be put to sleep using the DEACTIVATE command, to
  344.      bring it back to proper operation, use the `ACTIVATE' command. If
  345.      this command is invoked while the program is not asleep, it will
  346.      cause the main window to be brought to the front and activated.
  347.  
  348. `Result:'
  349.      -
  350.  
  351. `Warning:'
  352.      -
  353.  
  354. `Example:'
  355.           /* This is how the main programm can be (re-)activated: */
  356.           
  357.           ACTIVATE
  358.  
  359. The ADDITEM command
  360. ===================
  361.  
  362. `Format:'
  363.      ADDITEM [To] <Upload|Download|Dial|Wait> [Before|After] [Phone
  364.      <Entry number, name or wildcard pattern>] [Name <Name>] [Response
  365.      <Response text>]
  366.  
  367. `Template:'
  368.      TO/A,BEFORE/S,AFTER/S,PHONE/K/F,NAME/K/F,RESPONSE/K
  369.  
  370. `Purpose:'
  371.      Inserts an item (a name, a phone number, text, etc.) before or
  372.      after the currently selected list item.
  373.  
  374. `Specifications:'
  375.      `term' maintains a number of lists, these are:
  376.  
  377.     `Upload list'
  378.           The list of files to be uploaded.
  379.  
  380.     `Download list'
  381.           The list of files the program has downloaded.
  382.  
  383.     `Dial list'
  384.           The list of phone numbers or phone book entries to be dialed.
  385.  
  386.     `Wait list'
  387.           The list of texts the WAIT command is to wait for.
  388.  
  389.      New items can be added to the list with the `ADDITEM' command. The
  390.      upload list expects the names of files the SENDFILE command is to
  391.      transfer. It makes little sense to add files names to the download
  392.      list as the `term' main program maintains it and adds the names of
  393.      files received to it, but it is still possible. The wait list
  394.      expects text lines the WAIT command will look for in the terminal
  395.      input stream.  A wait list entry added using the `RESPONSE'
  396.      keyword will if found in the input data stream cause the response
  397.      text to be immediately sent to the remote.  *Note: a wait list
  398.      entry to make use of the `RESPONSE' keyword will be handled by the
  399.      WAIT command, the ARexx script will not notice if this list entry
  400.      was found or not.*
  401.  
  402.      The dial list accepts a number of different parameters:
  403.  
  404.     `Phonebook entry numbers'
  405.           These are passed using the `Phone' parameter which should be
  406.           a numeric value as it is used as an index to pick the
  407.           corresponding entry from the phone book.
  408.  
  409.     `Phonebook entry names'
  410.           These are also passed using the `Phone' parameter which can
  411.           be a proper name or a wildcard pattern.
  412.  
  413.     `Phone numbers'
  414.           These are passed using the `Name' parameter.
  415.  
  416.      List item can be inserted before or after the currently selected
  417.      list item (see SELECTITEM command). The default is to insert them
  418.      after the currently selected list item.
  419.  
  420. `Result:'
  421.      -
  422.  
  423. `Warning:'
  424.      -
  425.  
  426. `Example:'
  427.           /* Enable result codes. */
  428.           
  429.           OPTIONS RESULTS
  430.           
  431.           /* Get a file name from the user. */
  432.           
  433.           REQUESTFILE TITLE '"Select a file to upload"'
  434.           
  435.           /* Add the file name to the upload list. */
  436.           
  437.           IF rc = 0 THEN ADDITEM TO upload NAME result
  438.           
  439.           /* Add phonebook entry #2 to the dial list. */
  440.           
  441.           ADDITEM TO dial PHONE 2
  442.           
  443.           /* Add all phonebook entries whose names start
  444.            * with an `a' to the dial list.
  445.            */
  446.           
  447.           ADDITEM TO dial PHONE a#?
  448.           
  449.           /* Add a plain phone number to the dial list. */
  450.           
  451.           ADDITEM TO dial NAME 424242
  452.  
  453. The BAUD command
  454. ================
  455.  
  456. `Format:'
  457.      BAUD [Rate] <Baud rate in bits per second>
  458.  
  459. `Template:'
  460.      RATE/A/N
  461.  
  462. `Purpose:'
  463.      Sets the serial line transfer speed
  464.  
  465. `Specifications:'
  466.      Sets the serial line transfers speed to some defined value. The
  467.      rate parameter passed in will be matched against all valid baud
  468.      rates supported by `term', the closest value will be used.
  469.  
  470. `Result:'
  471.      -
  472.  
  473. `Warning:'
  474.      -
  475.  
  476. `Example:'
  477.           /* Change the serial transfer speed to 2400 bps. */
  478.           
  479.           BAUD 2400
  480.  
  481. The BEEPSCREEN command
  482. ======================
  483.  
  484. `Format:'
  485.      BEEPSCREEN
  486.  
  487. `Template:'
  488.      ,
  489.  
  490. `Purpose:'
  491.      `Beeps' the terminal screen.
  492.  
  493. `Specifications:'
  494.      Invokes a bell signal, as configured in the program settings.
  495.  
  496. `Result:'
  497.      -
  498.  
  499. `Warning:'
  500.      -
  501.  
  502. `Example:'
  503.           /* Invoke a bell signal. */
  504.           
  505.           BEEPSCREEN
  506.  
  507. The CALLMENU command
  508. ====================
  509.  
  510. `Format:'
  511.      CALLMENU [Title] <Title text or wildcard pattern>
  512.  
  513. `Template:'
  514.      TITLE/A/F
  515.  
  516. `Purpose:'
  517.      Invokes the function associated with a menu item.
  518.  
  519. `Specifications:'
  520.      Calls a pull-down menu function just as if the user had selected it
  521.      using the mouse. The `Title' parameter can be any valid menu item
  522.      name or a wildcard pattern. In the latter case, only the first
  523.      menu item to match the pattern will be called.
  524.  
  525. `Result:'
  526.      -
  527.  
  528. `Warning:'
  529.      If no matching menu item was to be found.
  530.  
  531. `Example:'
  532.           /* Invoke the `About...' menu item. */
  533.           
  534.           CALLMENU abou#?
  535.  
  536. The CAPTURE command
  537. ===================
  538.  
  539. `Format:'
  540.      CAPTURE [To] <Printer|File> [Name <File name>]
  541.  
  542. `Template:'
  543.      TO/A,NAME/K
  544.  
  545. `Purpose:'
  546.      Starts a file or printer capture.
  547.  
  548. `Specifications:'
  549.      If a capture is not already in progress will open a capture file
  550.      or start capturing incoming terminal text to the printer. If the
  551.      `File' argument is given and the `Name' parameter is omitted, will
  552.      prompt for the name of a file to capture to.
  553.  
  554.      If to capture to a given file, will append the captured text. If
  555.      user is to select a file to capture to, will ask whether to append
  556.      the text to the file or to overwrite it.
  557.  
  558. `Result:'
  559.      -
  560.  
  561. `Warning:'
  562.      In case user was to select a file and aborted the selection.
  563.  
  564. `Example:'
  565.           /* Open a named capture file. */
  566.           
  567.           CAPTURE TO file NAME 'ram:capture file'
  568.           
  569.           /* Close the capture file, ask the user for a file name. */
  570.           
  571.           CLOSE FILE
  572.           CAPTURE TO file
  573.           
  574.           /* Capture to the printer. */
  575.           
  576.           CAPTURE TO printer
  577.  
  578. The CLEAR command
  579. =================
  580.  
  581. `Format:'
  582.      CLEAR [From] <Upload|Download|Dial|Wait|Buffer> [Force]
  583.  
  584. `Template:'
  585.      FROM/A,FORCE/S
  586.  
  587. `Purpose:'
  588.      Clears the contents of a global list or the text buffer.
  589.  
  590. `Specifications:'
  591.      This command serves to clear the contents of the lists to be
  592.      maintained using the ADDITEM, REMITEM, SELECTITEM, etc. commands
  593.      and to purge the contents of the text buffer. In the latter case
  594.      the program will prompt for confirmation in case the buffer still
  595.      holds any lines. This confirmation can be suppressed by using the
  596.      `Force' parameter.
  597.  
  598. `Result:'
  599.      -
  600.  
  601. `Warning:'
  602.      In case the user did not confirm to clear the buffer.
  603.  
  604. `Example:'
  605.           /* Clear the wait list. */
  606.           
  607.           CLEAR FROM wait
  608.           
  609.           /* Clear the buffer, ask for a confirmation. */
  610.           
  611.           CLEAR FROM buffer
  612.           
  613.           /* If no confirmation was given, clear it by force. */
  614.           
  615.           IF rc ~= 0 THEN CLEAR FROM buffer FORCE
  616.  
  617. The CLEARSCREEN command
  618. =======================
  619.  
  620. `Format:'
  621.      CLEARSCREEN
  622.  
  623. `Template:'
  624.      ,
  625.  
  626. `Purpose:'
  627.      Clears the terminal screen
  628.  
  629. `Specifications:'
  630.      Clears the terminal screen and positions the cursor in the top
  631.      left corner.
  632.  
  633. `Result:'
  634.      -
  635.  
  636. `Warning:'
  637.      -
  638.  
  639. `Example:'
  640.           /* Clear the terminal screen. */
  641.           
  642.           CLEARSCREEN
  643.  
  644. The CLOSE command
  645. =================
  646.  
  647. `Format:'
  648.      CLOSE [From] <Printer|File|All>
  649.  
  650. `Template:'
  651.      FROM/A
  652.  
  653. `Purpose:'
  654.      Terminates file and/or printer capture.
  655.  
  656. `Specifications:'
  657.      Terminates a capture process as started with the CAPTURE command.
  658.      Will terminate printer capture, file capture or both.
  659.  
  660. `Result:'
  661.      -
  662.  
  663. `Warning:'
  664.      -
  665.  
  666. `Example:'
  667.           /* Terminate both file and printer capture. */
  668.           
  669.           CLOSE ALL
  670.  
  671. The CLOSEDEVICE command
  672. =======================
  673.  
  674. `Format:'
  675.      CLOSEDEVICE
  676.  
  677. `Template:'
  678.      ,
  679.  
  680. `Purpose:'
  681.      Release the current serial device driver
  682.  
  683. `Specifications:'
  684.      Frees the serial device driver for use with other applications.
  685.      The driver can be reopened (or a different device driver can be
  686.      selected) using the OPENDEVICE command.
  687.  
  688. `Result:'
  689.      -
  690.  
  691. `Warning:'
  692.      -
  693.  
  694. `Example:'
  695.           /* Release the serial device driver, all serial I/O
  696.            * will be halted.
  697.            */
  698.           
  699.           CLOSEDEVICE
  700.  
  701. The CLOSEREQUESTER command
  702. ==========================
  703.  
  704. `Format:'
  705.      CLOSEREQUESTER
  706.  
  707. `Template:'
  708.      ,
  709.  
  710. `Purpose:'
  711.      Closes the currently open requester window
  712.  
  713. `Specifications:'
  714.      Will close any currently open requester window, such as the
  715.      dialing window, the phone book, the serial settings window, etc.
  716.      Will not close windows such as the file transfer window or the
  717.      text/numeric input windows.
  718.  
  719. `Result:'
  720.      -
  721.  
  722. `Warning:'
  723.      -
  724.  
  725. `Example:'
  726.           /* Close the currently open requester window,
  727.            * whatever it may be.
  728.            */
  729.           
  730.           CLOSEREQUESTER
  731.  
  732. The DEACTIVATE command
  733. ======================
  734.  
  735. `Format:'
  736.      DEACTIVATE
  737.  
  738. `Template:'
  739.      ,
  740.  
  741. `Purpose:'
  742.      Iconifies the program.
  743.  
  744. `Specifications:'
  745.      Puts the application to sleep. Requires Workbench to be running,
  746.      so an AppIcon can be put on the Workbench backdrop. This command
  747.      will be ignored if the application has already been put to sleep.
  748.      To wake the application up, use the ACTIVATE command.
  749.  
  750. `Result:'
  751.      -
  752.  
  753. `Warning:'
  754.      -
  755.  
  756. `Example:'
  757.           /* Iconify the program. */
  758.           
  759.           DEACTIVATE
  760.  
  761. The DELAY command
  762. =================
  763.  
  764. `Format:'
  765.      DELAY [MIC|MICROSECONDS <Number>] [[SEC|SECONDS] <Number>]
  766.      [MIN|MINUTES <Number>] [QUIET]
  767.  
  768. `Template:'
  769.      MIC=MICROSECONDS/K/N,SEC=SECONDS/N,MIN=MINUTES/K/N,QUIET/S
  770.  
  771. `Purpose:'
  772.      Delays program execution for a couple of microseconds, seconds and
  773.      minutes.
  774.  
  775. `Specifications:'
  776.      Will cause both the program to make the call and the application
  777.      to wait for a certain period of time. Unless the `QUIET' option is
  778.      in effect will process and display data received from the serial
  779.      line.
  780.  
  781. `Result:'
  782.      -
  783.  
  784. `Warning:'
  785.      If command was aborted before the timeout had elapsed.
  786.  
  787. `Example:'
  788.           /* Wait for five seconds. */
  789.           
  790.           DELAY 5
  791.           
  792.           /* Wait for one second and seven microseconds. */
  793.           
  794.           DELAY MIC 7 SEC 5
  795.  
  796. The DIAL command
  797. ================
  798.  
  799. `Format:'
  800.      DIAL [WAIT|SYNC] [[Num] <Phone number>]
  801.  
  802. `Template:'
  803.      WAIT=SYNC/S,NUM/F
  804.  
  805. `Purpose:'
  806.      Dials the provided phone number. If no phone number was given,
  807.      will dial the numbers and phone book entries stored in the dial
  808.      list.
  809.  
  810. `Specifications:'
  811.      This command will build a dialing list from the available sources
  812.      and pass it to the dialing function which is to schedule the
  813.      dialing process and perform any login-actions. Available sources
  814.      are the `Num' parameter which will cause the command to dial only
  815.      this single number or the dial list whose contents will be used if
  816.      the `Num' parameter is omitted.
  817.  
  818.      If the `WAIT' parameter is used the command will wait until a
  819.      connection is made. If the parameter is not use this command will
  820.      return as soon as the dialing process has been initiated.
  821.  
  822. `Result:'
  823.      -
  824.  
  825. `Warning:'
  826.      If no connection was to be made.
  827.  
  828. `Example:'
  829.           /* Dial a single phone number. */
  830.           
  831.           DIAL 424242
  832.           
  833.           /* Wait a bit and abort the dialing process. */
  834.           
  835.           DELAY 5
  836.           CLOSEREQUESTER
  837.           
  838.           /* Clear the dialing list, then add all the phonebook entries
  839.            * to the list.
  840.            */
  841.           
  842.           CLEAR FROM dial
  843.           ADDITEM TO dial PHONE #?
  844.           
  845.           /* Dial the dial list. */
  846.           
  847.           DIAL WAIT
  848.           
  849.           /* Did we get a connection? */
  850.           
  851.           IF RC == 0 THEN SEND TEXT "Ack!\r"
  852.  
  853. The DUPLEX command
  854. ==================
  855.  
  856. `Format:'
  857.      DUPLEX [Full|Half|Echo]
  858.  
  859. `Template:'
  860.      FULL/S,HALF=ECHO/S
  861.  
  862. `Purpose:'
  863.      Sets the serial line duplex mode.
  864.  
  865. `Specifications:'
  866.      Sets the serial line duplex mode, this can be either full duplex
  867.      or half duplex (local echo).
  868.  
  869. `Result:'
  870.      -
  871.  
  872. `Warning:'
  873.      -
  874.  
  875. `Example:'
  876.           /* Enable local terminal echo. */
  877.           
  878.           DUPLEX ECHO
  879.  
  880. The EXECTOOL command
  881. ====================
  882.  
  883. `Format:'
  884.      EXECTOOL [Console] [Async] [Port] [Command] <File name>
  885.  
  886. `Template:'
  887.      CONSOLE/S,ASYNC/S,PORT/S,COMMAND/A/F
  888.  
  889. `Purpose:'
  890.      Executes a program.
  891.  
  892. `Specifications:'
  893.      Will load and execute an AmigaDOS program. The `Console' parameter
  894.      will cause an output file or window to be opened, the `Async'
  895.      parameter will cause the command to return as soon as the
  896.      execution process has been launched. The `Port' parameter will
  897.      cause the current ARexx host port name to be passed to the tool on
  898.      the command line.
  899.  
  900. `Result:'
  901.      -
  902.  
  903. `Warning:'
  904.      -
  905.  
  906. `Example:'
  907.           /* Launch the `Dir' command. */
  908.           
  909.           EXECTOOL CONSOLE COMMAND 'dir c:'
  910.  
  911. The FAULT command
  912. =================
  913.  
  914. `Format:'
  915.      FAULT [Code] <Error code>
  916.  
  917. `Template:'
  918.      CODE/A/N
  919.  
  920. `Purpose:'
  921.      Returns the descriptive text associated with an error code as
  922.      returned by `term'.
  923.  
  924. `Specifications:'
  925.      `term' will return error codes in the `term.lasterror' variable.
  926.      In order to get the descriptive text associated with an error
  927.      code, use this command.  All internal Rexx and AmigaDOS errors
  928.      codes are supported as well as the error codes special to `term'.
  929.  
  930. `Result:'
  931.      The error description associated with the error code.
  932.  
  933. `Warning:'
  934.      -
  935.  
  936. `Example:'
  937.           /* Enable command results. */
  938.           
  939.           OPTIONS RESULTS
  940.           
  941.           /* Get the text associated with error #1001. */
  942.           
  943.           FAULT 1001
  944.           
  945.           /* Output the result. */
  946.           
  947.           SAY result
  948.  
  949. The GETATTR command
  950. ===================
  951.  
  952. `Format:'
  953.      GETATTR [Object] <Name> [Field] <Name> [Stem <Name>] [Var <Name>]
  954.  
  955. `Template:'
  956.      OBJECT/A,FIELD,STEM/K,VAR/K
  957.  
  958. `Purpose:'
  959.      Obtains information on an application attribute.
  960.  
  961. `Specifications:'
  962.      Obtains information on an object, if possible will store it in the
  963.      `result' variable. If a stem or simple variable name is given
  964.      using the `Stem' or `Var' parameters will store the information in
  965.      this variable.  If no `Field' parameter is given, will store the
  966.      entire object contents which requires that the `Stem' parameter is
  967.      given. For a list of valid attributes see the section entitled
  968.      Attributes.
  969.  
  970. `Result:'
  971.      Returns information either in `result' variable or in the supplied
  972.      `Stem' or `Var' variable.
  973.  
  974. `Warning:'
  975.      -
  976.  
  977. `Example:'
  978.           /* Enable command results. */
  979.           
  980.           OPTIONS RESULTS
  981.           
  982.           /* Query the name of the ARexx host we are communicating with. */
  983.           
  984.           GETATTR OBJECT term FIELD arexx
  985.           
  986.           /* Output the result. */
  987.           
  988.           SAY result
  989.           
  990.           /* Same as above, but using a different syntax. */
  991.           
  992.           GETATTR term.arexx
  993.           SAY result
  994.           
  995.           /* Store the entire contents of the phone book in a
  996.            * stem variable.
  997.            */
  998.           
  999.           GETATTR phonebook STEM book
  1000.           
  1001.           /* Output the phonebook contents. */
  1002.           
  1003.           SAY 'phone book contains' book.count 'entries'
  1004.           
  1005.           DO i = 0 TO book.count - 1
  1006.              SAY 'entry #' i
  1007.           
  1008.              SAY 'name    :' book.i.name
  1009.              SAY 'number  :' book.i.number
  1010.              SAY 'comment :' book.i.commenttext
  1011.              SAY 'username:' book.i.username
  1012.           END i
  1013.  
  1014. The GETCLIP command
  1015. ===================
  1016.  
  1017. `Format:'
  1018.      GETCLIP [Unit <Number>]
  1019.  
  1020. `Template:'
  1021.      UNIT/K/N
  1022.  
  1023. `Purpose:'
  1024.      Retrieves the contents of the clipboard.
  1025.  
  1026. `Specifications:'
  1027.      Obtains the contents of the clipboard and returns it in the
  1028.      `result' variable. Will optionally read from the given clipboard
  1029.      unit, but uses the unit number selected in the application
  1030.      settings by default. *Note that a string returned can be up to
  1031.      65,536 characters long!*
  1032.  
  1033. `Result:'
  1034.      Contents of the clipboard if it contains any text.
  1035.  
  1036. `Warning:'
  1037.      If clipboard does not contain any text.
  1038.  
  1039. `Example:'
  1040.           /* Enable command results. */
  1041.           
  1042.           OPTIONS RESULTS
  1043.           
  1044.           /* Get the primary clipboard contents. */
  1045.           
  1046.           GETCLIP
  1047.           
  1048.           /* Output the contents. */
  1049.           
  1050.           IF rc ~= 0 THEN
  1051.              SAY 'clipboard does not contain any text'
  1052.           ELSE
  1053.              SAY result
  1054.  
  1055. The GOONLINE command
  1056. ====================
  1057.  
  1058. `Format:'
  1059.      GOONLINE
  1060.  
  1061. `Template:'
  1062.      ,
  1063.  
  1064. `Purpose:'
  1065.      Cause `term' to go into online state.
  1066.  
  1067. `Specifications:'
  1068.      After this command is processed `term' will immediately go into
  1069.      online state. If the carrier signal is to be checked and no signal
  1070.      is present `term' will drop into offline state right away.
  1071.  
  1072. `Result:'
  1073.      -
  1074.  
  1075. `Warning:'
  1076.      -
  1077.  
  1078. `Example:'
  1079.           /* Go into online state. */
  1080.           
  1081.           GOONLINE
  1082.  
  1083. The HANGUP command
  1084. ==================
  1085.  
  1086. `Format:'
  1087.      HANGUP
  1088.  
  1089. `Template:'
  1090.      ,
  1091.  
  1092. `Purpose:'
  1093.      Hang up the serial line.
  1094.  
  1095. `Specifications:'
  1096.      Hangs up the serial line, executes logoff and cleanup operations.
  1097.  
  1098. `Result:'
  1099.      -
  1100.  
  1101. `Warning:'
  1102.      -
  1103.  
  1104. `Example:'
  1105.           /* Hang up the line, whether the program is online or not. */
  1106.           
  1107.           HANGUP
  1108.  
  1109. The HELP command
  1110. ================
  1111.  
  1112. `Format:'
  1113.      HELP [[Command] <Name>] [Prompt]
  1114.  
  1115. `Template:'
  1116.      COMMAND,PROMPT/S
  1117.  
  1118. `Purpose:'
  1119.      Returns the template of a command or invokes the online help
  1120.      system.
  1121.  
  1122. `Specifications:'
  1123.      This command will either return the template associated with a
  1124.      `term' ARexx command specified using the `Command' parameter or
  1125.      invoke the AmigaGuide(tm) help system.
  1126.  
  1127. `Result:'
  1128.      Command template if requested.
  1129.  
  1130. `Warning:'
  1131.      -
  1132.  
  1133. `Example:'
  1134.           /* Enable command results. */
  1135.           
  1136.           OPTIONS RESULTS
  1137.           
  1138.           /* Query the template associated with the `selectitem' command. */
  1139.           
  1140.           HELP selectitem
  1141.           
  1142.           /* Output the result. */
  1143.           
  1144.           SAY result
  1145.           
  1146.           /* Invoke the online help. */
  1147.           
  1148.           HELP PROMPT
  1149.  
  1150. The OPEN command
  1151. ================
  1152.  
  1153. `Format:'
  1154.      OPEN [Name <File name>] [TO] <Translations|Functionkeys|Cursorkeys|
  1155.      Fastmacros|Hotkeys|Speech|Sound|Buffer|Configuration|Phone>
  1156.  
  1157. `Template:'
  1158.      NAME/K,TO/A
  1159.  
  1160. `Purpose:'
  1161.      Reads data from a disk file.
  1162.  
  1163. `Specifications:'
  1164.      This command reads the contents of a disk file and stores the
  1165.      information either in the configuration, the phone book or the
  1166.      text buffer. If text is read into the text buffer it will be
  1167.      appended to the existing text. If no file name is given will
  1168.      prompt the user to select a file.
  1169.  
  1170. `Result:'
  1171.      -
  1172.  
  1173. `Warning:'
  1174.      If user was requested to select a file and cancelled the selection.
  1175.  
  1176. `Example:'
  1177.           /* Load the configuration from a file. */
  1178.           
  1179.           OPEN NAME 'ram:term.prefs' TO configuration
  1180.           
  1181.           /* Add text to the text buffer. */
  1182.           
  1183.           OPEN TO buffer
  1184.  
  1185. The OPENDEVICE command
  1186. ======================
  1187.  
  1188. `Format:'
  1189.      OPENDEVICE [Name <Device name>] [Unit <Number>]
  1190.  
  1191. `Template:'
  1192.      NAME/K,UNIT/K/N
  1193.  
  1194. `Purpose:'
  1195.      (Re-)Opens the serial device driver.
  1196.  
  1197. `Specifications:'
  1198.      (Re-)Opens the previously released (see CLOSEDEVICE command) device
  1199.      driver or a different device driver/unit if the corresponding
  1200.      `Device' and `Unit' parameters are given.
  1201.  
  1202. `Result:'
  1203.      -
  1204.  
  1205. `Warning:'
  1206.      -
  1207.  
  1208. `Example:'
  1209.           /* Release the serial device driver. */
  1210.           
  1211.           CLOSEDEVICE
  1212.           
  1213.           /* Open a different device driver. */
  1214.           
  1215.           OPENDEVICE DEVICE 'duart.device' UNIT 5
  1216.  
  1217. The OPENREQUESTER command
  1218. =========================
  1219.  
  1220. `Format:'
  1221.      OPENREQUESTER [REQUESTER]
  1222.      <Serial|Modem|Screen|Terminal|Emulation|Clipboard|
  1223.  
  1224.  
  1225.  
  1226.  
  1227.  
  1228.  
  1229.      Capture|Commands|Misc|Path|Transfer|Translations|Functionkeys|Cursorkeys|
  1230.      Fastmacros|Hotkeys|Speech|Sound|Phone>
  1231.  
  1232. `Template:'
  1233.      REQUESTER/A
  1234.  
  1235. `Purpose:'
  1236.      Opens a requester window.
  1237.  
  1238. `Specifications:'
  1239.      Opens a requester window. Only a single window can be open at a
  1240.      time.  The window opened can be closed using the CLOSEREQUESTER
  1241.      command.
  1242.  
  1243. `Result:'
  1244.      -
  1245.  
  1246. `Warning:'
  1247.      -
  1248.  
  1249. `Example:'
  1250.           /* Open the phonebook window. */
  1251.           
  1252.           OPENREQUESTER phone
  1253.  
  1254. The PARITY command
  1255. ==================
  1256.  
  1257. `Format:'
  1258.      PARITY [Even|Odd|None|Mark|Space]
  1259.  
  1260. `Template:'
  1261.      EVEN/S,ODD/S,NONE/S,MARK/S,SPACE/S
  1262.  
  1263. `Purpose:'
  1264.      Sets the serial line parity mode.
  1265.  
  1266. `Specifications:'
  1267.      Sets the serial line parity mode.
  1268.  
  1269. `Result:'
  1270.      -
  1271.  
  1272. `Warning:'
  1273.      -
  1274.  
  1275. `Example:'
  1276.           /* Set the parity mode. */
  1277.           
  1278.           PARITY NONE
  1279.  
  1280. The PASTECLIP command
  1281. =====================
  1282.  
  1283. `Format:'
  1284.      PASTECLIP [Unit <Number>]
  1285.  
  1286. `Template:'
  1287.      UNIT/K/N
  1288.  
  1289. `Purpose:'
  1290.      Feed the contents of the clipboard into the input stream.
  1291.  
  1292. `Specifications:'
  1293.      Feeds the contents of the clipboard into the input stream. Obtains
  1294.      the data either from the given clipboard unit or from the default
  1295.      unit configured in the program settings.
  1296.  
  1297. `Result:'
  1298.      -
  1299.  
  1300. `Warning:'
  1301.      If clipboard does not contain any text.
  1302.  
  1303. `Example:'
  1304.           /* Paste the contents of clipboard #2. */
  1305.           
  1306.           PASTECLIP UNIT 2
  1307.  
  1308. The PRINT command
  1309. =================
  1310.  
  1311. `Format:'
  1312.      PRINT [From]
  1313.      <Screentext|Clipboard|Buffer|Dial|Wait|Upload|Download> [TO <File
  1314.      name>] [Serial|Modem|Screen|Terminal|User|Comment| Size|Date|Attr]
  1315.  
  1316. `Template:'
  1317.      FROM/A,TO/K,SERIAL/S,MODEM/S,SCREEN/S,TERMINAL/S,USER/S,
  1318.      COMMENT/S,SIZE/S,DATE/S,ATTR/S
  1319.  
  1320. `Purpose:'
  1321.      Prints the contents of the screen, the clipboard, the textbuffer
  1322.      or one of the lists.
  1323.  
  1324. `Specifications:'
  1325.      Outputs the contents of the screen, the clipboard, the textbuffer
  1326.      or one of the lists (see ADDITEM command) to a file or the
  1327.      printer. If the `To' parameter is omitted, will output the data to
  1328.      the printer. The parameters `Serial' through `Attr' control what
  1329.      will be printed:
  1330.  
  1331.     `Screentext, Clipboard, Buffer, Wait list'
  1332.           Options have no effect on the output.
  1333.  
  1334.     `Dial list'
  1335.           Responds to the `Serial', `Modem', `Screen', `Terminal',
  1336.           `User' and `Comment' parameters. The printout will contain
  1337.           information on the corresponding settings.
  1338.  
  1339.     `Upload list, Download list'
  1340.           Responds to the `Comment', `Size', `Date' and `Attr'
  1341.           parameters. The printout will contain information on the
  1342.           corresponding file attributes. *Note: if any of these
  1343.           parameters are given, only the base file names will be
  1344.           printed along with the corresponding information.*
  1345.  
  1346. `Result:'
  1347.      -
  1348.  
  1349. `Warning:'
  1350.      If user cancelled print operation.
  1351.  
  1352. `Example:'
  1353.           /* Clear the dialing list, then add the entire phone book to it. */
  1354.           
  1355.           CLEAR dial
  1356.           additem to dial phone #?
  1357.           
  1358.           /* Send the contents of the dial list to a disk file. */
  1359.           
  1360.           PRINT FROM dial TO 'ram:phonebook' SERIAL MODEM SCREEN...
  1361.           ...TERMINAL USER COMMENT
  1362.  
  1363. The PROCESSIO command
  1364. =====================
  1365.  
  1366. `Format:'
  1367.      PROCESSIO <On|Off>
  1368.  
  1369. `Template:'
  1370.      ON/S,OFF/S
  1371.  
  1372. `Purpose:'
  1373.      Turns serial I/O processing on or off.
  1374.  
  1375. `Specifications:'
  1376.      Usually, the `term' main program processes incoming data from the
  1377.      serial line, i.e. text is displayed in the terminal window or data
  1378.      transfers are started. This can interfere with custom I/O
  1379.      processing, such as done by an ARexx program which wants to
  1380.      receive and process all incoming serial data, without getting
  1381.      interrupted by the main program.
  1382.  
  1383. `Result:'
  1384.      -
  1385.  
  1386. `Warning:'
  1387.      -
  1388.  
  1389. `Example:'
  1390.           /* Turn off I/O processing. */
  1391.           
  1392.           PROCESSIO OFF
  1393.  
  1394. The PROTOCOL command
  1395. ====================
  1396.  
  1397. `Format:'
  1398.      PROTOCOL [None|RTSCTS|RTSCTSDTR]
  1399.  
  1400. `Template:'
  1401.      NONE/S,RTSCTS/S,RTSCTSDTR/S
  1402.  
  1403. `Purpose:'
  1404.      Sets the serial line handshaking protocol.
  1405.  
  1406. `Specifications:'
  1407.      Sets the serial line handshaking protocol. See the main program
  1408.      documentation for details.
  1409.  
  1410. `Result:'
  1411.      -
  1412.  
  1413. `Warning:'
  1414.      -
  1415.  
  1416. `Example:'
  1417.           /* Set the handshaking protocol. */
  1418.           
  1419.           PROTOCOL NONE
  1420.  
  1421. The PUTCLIP command
  1422. ===================
  1423.  
  1424. `Format:'
  1425.      PUTCLIP [Unit <Unit>] [TEXT] <Text to store>
  1426.  
  1427. `Template:'
  1428.      UNIT/K/N,TEXT/A/F
  1429.  
  1430. `Purpose:'
  1431.      Stores text in the clipboard.
  1432.  
  1433. `Specifications:'
  1434.      Stores the provided text in the clipboard. Will store it in the
  1435.      given clipboard unit if the `Unit' parameter is given. Will use
  1436.      the unit number configured in the program settings otherwise.
  1437.  
  1438. `Result:'
  1439.      -
  1440.  
  1441. `Warning:'
  1442.      -
  1443.  
  1444. `Example:'
  1445.           /* Store a short string in the clipboard. Note: can
  1446.            * only be up to 65,536 characters long.
  1447.            */
  1448.           
  1449.           PUTCLIP 'hello sailor!'
  1450.  
  1451. The QUIT command
  1452. ================
  1453.  
  1454. `Format:'
  1455.      QUIT [Force]
  1456.  
  1457. `Template:'
  1458.      FORCE/S
  1459.  
  1460. `Purpose:'
  1461.      Terminates the application.
  1462.  
  1463. `Specifications:'
  1464.      Terminates program execution, will ask for a confirmation to leave
  1465.      unless the `Force' parameter is used. *Caution: this command may
  1466.      fail if there are still output windows open on the `term' screen.*
  1467.  
  1468. `Result:'
  1469.      -
  1470.  
  1471. `Warning:'
  1472.      If user did not confirm termination.
  1473.  
  1474. `Example:'
  1475.           /* Try to terminate the program, ask for confirmation. */
  1476.           
  1477.           QUIT
  1478.           
  1479.           /* If no confirmation was given terminate by force. */
  1480.           
  1481.           IF rc ~= 0 THEN QUIT FORCE
  1482.  
  1483. The READ command
  1484. ================
  1485.  
  1486. `Format:'
  1487.      READ [Num <Number of bytes>] [CR] [Noecho] [Verbatim] [[Prompt]
  1488.      <Prompt text>]
  1489.  
  1490. `Template:'
  1491.      NUM/K/N,CR/S,NOECHO/S,VERBATIM/S,PROMPT/K/F
  1492.  
  1493. `Purpose:'
  1494.      Reads a number of bytes or a string from the serial line.
  1495.  
  1496. `Specifications:'
  1497.      If `Num' parameter is given will read a number of bytes from the
  1498.      serial line (*note: only a maximum of 65,536 bytes can be read*).
  1499.      The command will return when the read request has been satisfied,
  1500.      the timeout (settable using the TIMEOUT command) has elapsed or
  1501.      the command was aborted.
  1502.  
  1503.      If the `CR' parameter is given will handle simple line editing
  1504.      functions (`Backspace', `Control-X') and return a string as soon
  1505.      as the `Carriage return' key is pressed, the timeout (settable
  1506.      using the TIMEOUT command) has elapsed or the command is aborted.
  1507.  
  1508.      The `Noecho' parameter will cause `term' not to echo typed
  1509.      characters back to the remote. *Note that in order to see any
  1510.      input on the local side the remote is to echo the characters typed
  1511.      back.*
  1512.  
  1513.      If present, the `Prompt' text will be sent across the serial line,
  1514.      much the same as if it had been sent using the SEND command.
  1515.  
  1516.      This command pays attention to the current character translation
  1517.      table for incoming characters. If the characters are to be read
  1518.      without any changes made one has to use the `Verbatim' parameter.
  1519.  
  1520. `Result:'
  1521.      The string read.
  1522.  
  1523. `Warning:'
  1524.      If command was cancelled, no input was made or, if the `CR'
  1525.      parameter is used, the timeout elapsed.
  1526.  
  1527. `Example:'
  1528.           /* Enable command results. */
  1529.           
  1530.           OPTIONS RESULTS
  1531.           
  1532.           /* Set the read timeout to five seconds. */
  1533.           
  1534.           TIMEOUT 5
  1535.           
  1536.           /* Read seven bytes. */
  1537.           
  1538.           READ NUM 7
  1539.           
  1540.           /* Output the result. */
  1541.           
  1542.           IF rc ~= 0 THEN
  1543.              SAY 'no data was read'
  1544.           ELSE
  1545.              SAY result
  1546.           
  1547.           /* Turn the timeout off. */
  1548.           
  1549.           TIMEOUT OFF
  1550.           
  1551.           /* Prompt for input. */
  1552.           
  1553.           READ CR PROMPT 'Enter a line of text:'
  1554.           
  1555.           /* Output the result. */
  1556.           
  1557.           IF rc ~= 0 THEN
  1558.              SAY 'no input was made'
  1559.           ELSE
  1560.              SAY result
  1561.  
  1562. The RECEIVEFILE command
  1563. =======================
  1564.  
  1565. `Format:'
  1566.      RECEIVEFILE [Mode <ASCII|Text|Binary>] [Name <File name>]
  1567.  
  1568. `Template:'
  1569.      MODE/K,NAME/K
  1570.  
  1571. `Purpose:'
  1572.      Receive one or more files using the XPR protocol.
  1573.  
  1574. `Specifications:'
  1575.      Receives one or more files using the currently configured XPR
  1576.      protocol.  The `Mode' parameter determines the file transfer mode
  1577.      (either plain ASCII, Text mode or binary file mode), if omitted
  1578.      the file(s) will be received in binary mode. Some file transfer
  1579.      protocols do not require any file names to be given as they have
  1580.      their own means to determine the names of the files to be
  1581.      received. However, a file name parameter can be given. If omitted
  1582.      the file transfer protocol will prompt the user for a file name if
  1583.      necessary.
  1584.  
  1585.      The names of all files received are placed on the download list
  1586.      for processing. The list will be cleared before the transfer is
  1587.      started.
  1588.  
  1589. `Result:'
  1590.      -
  1591.  
  1592. `Warning:'
  1593.      If user cancelled file selection.
  1594.  
  1595. `Example:'
  1596.           /* Start to receive a file in text mode. */
  1597.           
  1598.           RECEIVEFILE MODE text
  1599.  
  1600. The REDIAL command
  1601. ==================
  1602.  
  1603. `Format:'
  1604.      REDIAL
  1605.  
  1606. `Template:'
  1607.      ,
  1608.  
  1609. `Purpose:'
  1610.      Redials the numbers remaining in the currently configured dialing
  1611.      list.
  1612.  
  1613. `Specifications:'
  1614.      Redials the numbers which still remain in the dialing list built
  1615.      either by the phone book or by the DIAL command. *Note that this
  1616.      command will return as soon as the dialing process is initiated.*
  1617.  
  1618. `Result:'
  1619.      -
  1620.  
  1621. `Warning:'
  1622.      If dialing list is empty.
  1623.  
  1624. `Example:'
  1625.           /* Redial the list. */
  1626.           
  1627.           REDIAL
  1628.           
  1629.           /* Successful? */
  1630.           
  1631.           IF rc ~= 0 THEN SAY 'dialing list is empty'
  1632.  
  1633. The REMITEM command
  1634. ===================
  1635.  
  1636. `Format:'
  1637.      REMITEM [From] <Upload|Download|Dial|Wait> [Name <Name or
  1638.      wildcard>]
  1639.  
  1640. `Template:'
  1641.      FROM/A,NAME/K/F
  1642.  
  1643. `Purpose:'
  1644.      Removes one or more items from a list.
  1645.  
  1646. `Specifications:'
  1647.      Removes one or more items from a list. If no `Name' parameter is
  1648.      given will remove the currently selected list item (selectable
  1649.      using the SELECTITEM command). The `Name' parameter can be a
  1650.      proper name or a wildcard pattern.
  1651.  
  1652.      *Note: Cannot remove named items from the dial list.*
  1653.  
  1654. `Result:'
  1655.      -
  1656.  
  1657. `Warning:'
  1658.      If no list item would match the name pattern.
  1659.  
  1660. `Example:'
  1661.           /* Remove the currently selected item from the wait list. */
  1662.           
  1663.           REMITEM FROM wait
  1664.           
  1665.           /* Remove all items from the wait list which end with `z'. */
  1666.           
  1667.           REMITEM FROM wait NAME '#?z'
  1668.  
  1669. The REQUESTFILE command
  1670. =======================
  1671.  
  1672. `Format:'
  1673.      REQUESTFILE [Title <Title text>] [Path <Path name>] [File <File
  1674.      name>] [Pattern <Wildcard pattern>] [Multi] [Stem|Name <Variable
  1675.      name>]
  1676.  
  1677. `Template:'
  1678.      TITLE/K,PATH/K,FILE/K,PATTERN/K,MULTI/S,STEM=NAME/K
  1679.  
  1680. `Purpose:'
  1681.      Requests one or more file names from the user.
  1682.  
  1683. `Specifications:'
  1684.      Requests one or more file names from the user. Will present a file
  1685.      requester with given title text and preset path, file name and
  1686.      pattern values. If only a single file name is to be requested will
  1687.      place the result in the `result' variable. The `Multi' parameter
  1688.      allows multiple files to be selected, the number of files selected
  1689.      and the file names will be placed in the variable specified using
  1690.      the `Stem' parameter.
  1691.  
  1692. `Result:'
  1693.      The name of the file selected will be placed in the `result'
  1694.      variable. If multiple file were selected, will place the following
  1695.      information in the supplied stem variable:
  1696.  
  1697.     `<Variable name>.COUNT'
  1698.           The number of files selected.
  1699.  
  1700.     `<Variable name>.0 through <Variable name>.n-1'
  1701.           The file names selected.
  1702.  
  1703. `Warning:'
  1704.      If user cancelled selection.
  1705.  
  1706. `Example:'
  1707.           /* Enable command results. */
  1708.           
  1709.           OPTIONS RESULTS
  1710.           
  1711.           /* Request a single file name from the user. */
  1712.           
  1713.           REQUESTFILE TITLE '"select a file"'
  1714.           
  1715.           /* Output the result. */
  1716.           
  1717.           IF rc ~= 0 THEN
  1718.              SAY 'no file was selected'
  1719.           ELSE
  1720.              SAY result
  1721.           
  1722.           /* Request several files. */
  1723.           
  1724.           REQUESTFILE TITLE 'select several files' MULTI STEM names
  1725.           
  1726.           /* Output the result. */
  1727.           
  1728.           IF rc ~= 0 THEN
  1729.              SAY 'no files were selected'
  1730.           ELSE DO
  1731.              SAY 'files selected:' names.count
  1732.           
  1733.              DO i = 0 TO names.count - 1
  1734.                 SAY names.i
  1735.              END
  1736.           END
  1737.  
  1738. The REQUESTNOTIFY command
  1739. =========================
  1740.  
  1741. `Format:'
  1742.      REQUESTNOTIFY [Title <Title text>] [Prompt] <Prompt text>
  1743.  
  1744. `Template:'
  1745.      TITLE/K,PROMPT/A/F
  1746.  
  1747. `Purpose:'
  1748.      Notify the user with a message.
  1749.  
  1750. `Specifications:'
  1751.      Opens a requester to notify the user, the prompt text can include
  1752.      line feed characters (`'0A'X'), the user will be able to answer
  1753.      the requester by clicking on a `Continue' button.
  1754.  
  1755. `Result:'
  1756.      -
  1757.  
  1758. `Warning:'
  1759.      -
  1760.  
  1761. `Example:'
  1762.           /* Notify the user. */
  1763.           
  1764.           REQUESTNOTIFY TITLE '"Important information"' ...
  1765.           ...PROMPT 'This message is important'
  1766.  
  1767. The REQUESTNUMBER command
  1768. =========================
  1769.  
  1770. `Format:'
  1771.      REQUESTNUMBER [Default <Default number>] [Prompt <Prompt text>]
  1772.  
  1773. `Template:'
  1774.      DEFAULT/K/N,PROMPT/K/F
  1775.  
  1776. `Purpose:'
  1777.      Requests a numeric value from the user
  1778.  
  1779. `Specifications:'
  1780.      Requests a numeric value from the user, will display the provided
  1781.      prompt text or a default text and present the provided default
  1782.      number, so user can simply hit return to accept the defaults.
  1783.  
  1784. `Result:'
  1785.      The number the has entered.
  1786.  
  1787. `Warning:'
  1788.      If user cancelled requester.
  1789.  
  1790. `Example:'
  1791.           /* Enable command results. */
  1792.           
  1793.           OPTIONS RESULTS
  1794.           
  1795.           /* Requester a single number. */
  1796.           
  1797.           REQUESTNUMBER DEFAULT 42 PROMPT 'Enter the answer'
  1798.           
  1799.           /* Output the result. */
  1800.           
  1801.           IF rc ~= 0 THEN
  1802.              SAY 'no number was entered'
  1803.           ELSE
  1804.              SAY result
  1805.  
  1806. The REQUESTRESPONSE command
  1807. ===========================
  1808.  
  1809. `Format:'
  1810.      REQUESTRESPONSE [Title <Title text>] [Options <Options string>]
  1811.      [Prompt] <Prompt text>
  1812.  
  1813. `Template:'
  1814.      TITLE/K,OPTIONS/K,PROMPT/A/F
  1815.  
  1816. `Purpose:'
  1817.      Request a response from user.
  1818.  
  1819. `Specifications:'
  1820.      Requests a response from the user, uses provided title and prompt
  1821.      text and a number of options. If no options are specified will use
  1822.      `Yes|No' as the defaults.
  1823.  
  1824. `Result:'
  1825.      For `Options' passed as `Yes|Perhaps|No' will return 1 for `Yes',
  1826.      2 for `Perhaps' and return a warning for `No'.
  1827.  
  1828. `Warning:'
  1829.      If user selected negative choice.
  1830.  
  1831. `Example:'
  1832.           /* Enable command results. */
  1833.           
  1834.           OPTIONS RESULTS
  1835.           
  1836.           /* Request a response. */
  1837.           
  1838.           REQUESTRESPONSE PROMPT 'Are you indecisive?' ...
  1839.           ...OPTIONS '"Yes|Don't know|No"'
  1840.           
  1841.           /* Look at the response. */
  1842.           
  1843.           IF rc ~= 0 THEN
  1844.              SAY 'Not indecisive'
  1845.           ELSE DO
  1846.              IF result = 0 THEN
  1847.                 SAY 'Indecisive'
  1848.              ELSE
  1849.                 SAY 'Probably indecisive'
  1850.           END
  1851.  
  1852. The REQUESTSTRING command
  1853. =========================
  1854.  
  1855. `Format:'
  1856.      REQUESTSTRING [Secret] [Default <String>] [Prompt <Text>]
  1857.  
  1858. `Template:'
  1859.      SECRET/S,DEFAULT/K,PROMPT/K/F
  1860.  
  1861. `Purpose:'
  1862.      Requests a string from the user.
  1863.  
  1864. `Specifications:'
  1865.      Requests a string from the user, will display the provided prompt
  1866.      text or a default text and present the provided default string, so
  1867.      user can simply hit return to accept the defaults.
  1868.  
  1869.      If the `Secret' parameter is provided, will not display the
  1870.      characters typed.
  1871.  
  1872. `Result:'
  1873.      The text the user entered.
  1874.  
  1875. `Warning:'
  1876.      If user cancelled the requester.
  1877.  
  1878. `Example:'
  1879.           /* Enable command results. */
  1880.           
  1881.           OPTIONS RESULTS
  1882.           
  1883.           /* Request a secret string. */
  1884.           
  1885.           REQUESTSTRING SECRET DEFAULT '"hello sailor!"' ...
  1886.           ...PROMPT 'Enter secret message'
  1887.           
  1888.           /* Output the result. */
  1889.           
  1890.           IF rc ~= 0 THEN
  1891.              SAY 'no text was entered'
  1892.           ELSE
  1893.              SAY result
  1894.  
  1895. The RESETSCREEN command
  1896. =======================
  1897.  
  1898. `Format:'
  1899.      RESETSCREEN
  1900.  
  1901. `Template:'
  1902.      ,
  1903.  
  1904. `Purpose:'
  1905.      Resets the terminal screen to defaults.
  1906.  
  1907. `Specifications:'
  1908.      Resets the terminal screen to defaults, this includes clearing the
  1909.      screen, moving the cursor to the home position and resetting text,
  1910.      text rendering styles and colours.
  1911.  
  1912. `Result:'
  1913.      -
  1914.  
  1915. `Warning:'
  1916.      -
  1917.  
  1918. `Example:'
  1919.           /* Reset the terminal screen. */
  1920.           
  1921.           RESETSCREEN
  1922.  
  1923. The RESETSTYLES command
  1924. =======================
  1925.  
  1926. `Format:'
  1927.      RESETSTYLES
  1928.  
  1929. `Template:'
  1930.      ,
  1931.  
  1932. `Purpose:'
  1933.      Resets the text rendering styles to defaults.
  1934.  
  1935. `Specifications:'
  1936.      Resets the text rendering styles to defaults, turning off inverse
  1937.      video, boldface, italics, etc. modes.
  1938.  
  1939. `Result:'
  1940.      -
  1941.  
  1942. `Warning:'
  1943.      -
  1944.  
  1945. `Example:'
  1946.           /* Reset the text rendering styles. */
  1947.           
  1948.           RESETSTYLES
  1949.  
  1950. The RESETTEXT command
  1951. =====================
  1952.  
  1953. `Format:'
  1954.      RESETTEXT
  1955.  
  1956. `Template:'
  1957.      ,
  1958.  
  1959. `Purpose:'
  1960.      Reset the terminal text to defaults.
  1961.  
  1962. `Specifications:'
  1963.      Reset the terminal text to defaults, this includes switching back
  1964.      from graphics text or G1 mode.
  1965.  
  1966. `Result:'
  1967.      -
  1968.  
  1969. `Warning:'
  1970.      -
  1971.  
  1972. `Example:'
  1973.           /* Reset the terminal text. */
  1974.           
  1975.           RESETTEXT
  1976.  
  1977. The RESETTIMER command
  1978. ======================
  1979.  
  1980. `Format:'
  1981.      RESETTIMER
  1982.  
  1983. `Template:'
  1984.      ,
  1985.  
  1986. `Purpose:'
  1987.      Reset the online timer.
  1988.  
  1989. `Specifications:'
  1990.      The online timer is reset to 00:00:00, regardless whether `term'
  1991.      is currently online or not.
  1992.  
  1993. `Result:'
  1994.      -
  1995.  
  1996. `Warning:'
  1997.      -
  1998.  
  1999. `Example:'
  2000.           /* Reset the online timer. */
  2001.           
  2002.           RESETTIMER
  2003.  
  2004. The RX command
  2005. ==============
  2006.  
  2007. `Format:'
  2008.      RX [Console] [Async] [Command] <Command name>
  2009.  
  2010. `Template:'
  2011.      CONSOLE/S,ASYNC/S,COMMAND/A/F
  2012.  
  2013. `Purpose:'
  2014.      Invokes an ARexx macro file.
  2015.  
  2016. `Specifications:'
  2017.      Invokes an ARexx macro file, if `Console' argument specified opens
  2018.      a console output window, else uses `NIL:', if `Async' argument
  2019.      specified executes the macro asynchronously.
  2020.  
  2021. `Result:'
  2022.      -
  2023.  
  2024. `Warning:'
  2025.      -
  2026.  
  2027. `Example:'
  2028.           /* Launch the `term' command shell. */
  2029.           
  2030.           RX CONSOLE ASYNC 'term:cmdshell.term'
  2031.  
  2032. The SAVE command
  2033. ================
  2034.  
  2035. `Format:'
  2036.      SAVE [From] <Translations|Functionkeys|
  2037.      Cursorkeys|Fastmacros|Hotkeys|Speech|
  2038.      Sound|Buffer|Configuration|Phone| Screentext|Screenimage>
  2039.  
  2040. `Template:'
  2041.      FROM/A
  2042.  
  2043. `Purpose:'
  2044.      Saves data to a disk file.
  2045.  
  2046. `Specifications:'
  2047.      Saves data to a disk file, will prompt for a file name to save to.
  2048.      See SAVEAS command for more information.
  2049.  
  2050. `Result:'
  2051.      -
  2052.  
  2053. `Warning:'
  2054.      If user cancels save operation.
  2055.  
  2056. `Example:'
  2057.           /* Save the terminal screen contents to an
  2058.            * IFF-ILBM file.
  2059.            */
  2060.           
  2061.           SAVE FROM screenimage
  2062.  
  2063. The SAVEAS command
  2064. ==================
  2065.  
  2066. `Format:'
  2067.      SAVEAS [Name <File name>] [From]
  2068.      <Translations|Functionkeys|Cursorkeys|
  2069.      Fastmacros|Hotkeys|Speech|Sound|Buffer|
  2070.      Configuration|Phone|Screentext| Screenimage>
  2071.  
  2072. `Template:'
  2073.      NAME/K,FROM/A
  2074.  
  2075. `Purpose:'
  2076.      Saves data to a disk file.
  2077.  
  2078. `Specifications:'
  2079.      Saves data to a disk file, will prompt for a filename to save to
  2080.      if none is provided. Will save either parts of the program
  2081.      configuration or the phone book contents (`Phonebook' parameter),
  2082.      the contents of the terminal screen as plain ASCII text
  2083.      (`Screentext' parameter) or the contents of the terminal screen as
  2084.      an IFF-ILBM-file (`Screenimage' parameter).
  2085.  
  2086. `Result:'
  2087.      -
  2088.  
  2089. `Warning:'
  2090.      If user cancels save operation.
  2091.  
  2092. `Example:'
  2093.           /* Save the program configuration to a file. */
  2094.           
  2095.           SAVEAS NAME 'ram:term.prefs' FROM configuration
  2096.  
  2097. The SELECTITEM command
  2098. ======================
  2099.  
  2100. `Format:'
  2101.      SELECTITEM [Name <Name>] [From] <Upload|Download|Dial|Wait>
  2102.      [Next|Prev|Previous|Top|Bottom]
  2103.  
  2104. `Template:'
  2105.      NAME/K,FROM/A,NEXT/S,PREV=PREVIOUS/S,TOP/S,BOTTOM/S
  2106.  
  2107. `Purpose:'
  2108.      Select an item from a list.
  2109.  
  2110. `Specifications:'
  2111.      Selects an item from a list, returns the item name in the `result'
  2112.      variable. The `Top' parameter will select the first list item,
  2113.      `Bottom' the last item. The `Previous' parameter will select the
  2114.      previous list item, `Next' the next successive item. Instead of
  2115.      using a positioning parameter, it is also possible to use a
  2116.      wildcard pattern or name with the `Name' parameter. The first list
  2117.      item to match the name will be selected.
  2118.  
  2119.      *Note: cannot be used with the dial list.*
  2120.  
  2121. `Result:'
  2122.      Returns the list item in the `result' variable.
  2123.  
  2124. `Warning:'
  2125.      If end of list reached.
  2126.  
  2127. `Example:'
  2128.           /* Enable command results. */
  2129.           
  2130.           OPTIONS RESULTS
  2131.           
  2132.           /* Output the contents of the download list. */
  2133.           
  2134.           SELECTITEM FROM download TOP
  2135.           
  2136.           DO WHILE rc = 0
  2137.              SAY result
  2138.              SELECTITEM FROM download NEXT
  2139.           END
  2140.  
  2141. The SEND command
  2142. ================
  2143.  
  2144. `Format:'
  2145.      SEND [Noecho] [Local] [Byte <ASCII code>] [Text] <Text>
  2146.  
  2147. `Template:'
  2148.      NOECHO/S,LOCAL/S,BYTE/K/N,TEXT/A/F
  2149.  
  2150. `Purpose:'
  2151.      Sends the provided text to the serial line, executes embedded
  2152.      command sequences.
  2153.  
  2154. `Specifications:'
  2155.      Sends the provided text to the serial line, executes embedded
  2156.      command sequences (see main program documentation). To send a
  2157.      single byte, use the `Byte' parameter. The `Noecho' parameter will
  2158.      suppress terminal output. The `Local' parameter will cause the
  2159.      text to be output only locally in the terminal window, it will not
  2160.      be sent across the serial line.
  2161.  
  2162. `Result:'
  2163.      -
  2164.  
  2165. `Warning:'
  2166.      -
  2167.  
  2168. `Example:'
  2169.           /* Send some text to the serial line. */
  2170.           
  2171.           SEND 'This is some text.\r\n'
  2172.           
  2173.           /* Send a single byte (a null) to the serial line. */
  2174.           
  2175.           SEND BYTE 0
  2176.           
  2177.           /* Execute an embedded command (send a break signal). */
  2178.           
  2179.           SEND '\x'
  2180.  
  2181. The SENDBREAK command
  2182. =====================
  2183.  
  2184. `Format:'
  2185.      SENDBREAK
  2186.  
  2187. `Template:'
  2188.      ,
  2189.  
  2190. `Purpose:'
  2191.      Send a break signal across the serial line.
  2192.  
  2193. `Specifications:'
  2194.      Send a break signal across the serial line.
  2195.  
  2196. `Result:'
  2197.      -
  2198.  
  2199. `Warning:'
  2200.      -
  2201.  
  2202. `Example:'
  2203.           /* Send a break signal. */
  2204.           
  2205.           SENDBREAK
  2206.  
  2207. The SENDFILE command
  2208. ====================
  2209.  
  2210. `Format:'
  2211.      SENDFILE [Mode <ASCII|Text|Binary>] [Names] {File names}
  2212.  
  2213. `Template:'
  2214.      MODE/K,NAMES/M
  2215.  
  2216. `Purpose:'
  2217.      Transfers files using the currently selected file transfer
  2218.      protocol.
  2219.  
  2220. `Specifications:'
  2221.      Transfers one or more files using the currently configured XPR
  2222.      protocol.  The `Mode' parameter determines the file transfer mode
  2223.      (either plain ASCII, Text mode or binary file mode), if omitted
  2224.      the file(s) will be sent in binary mode. Some file transfer
  2225.      protocols do not require any file names to be given as they have
  2226.      their own means to determine the names of the files to be sent.
  2227.      However, a file name parameter can be given. If omitted the file
  2228.      transfer protocol will prompt the user for a file name if
  2229.      necessary. Several file names can be given if necessary, they will
  2230.      be transferred along with the file names stored in the upload
  2231.      list. The file transfer process will remove any files successfully
  2232.      transferred from the upload list, leaving only those behing which
  2233.      were not to be transferred correctly.
  2234.  
  2235.      Files whose names do not include a fully qualified path name are
  2236.      expected to reside in the default upload directory as specified in
  2237.      the main program paths settings.
  2238.  
  2239. `Result:'
  2240.      -
  2241.  
  2242. `Warning:'
  2243.      If user cancels file selection.
  2244.  
  2245. `Example:'
  2246.           /* Prompt for files to be uploaded. */
  2247.           
  2248.           SENDFILE
  2249.           
  2250.           /* Send a single file. */
  2251.           
  2252.           SENDFILE 'c:list'
  2253.           
  2254.           /* Clear the upload list, add a single file name. */
  2255.           
  2256.           CLEAR upload
  2257.           ADDITEM TO upload NAME 'c:dir'
  2258.           
  2259.           /* Transfer the file. */
  2260.           
  2261.           SENDFILE
  2262.  
  2263. The SETATTR command
  2264. ===================
  2265.  
  2266. `Format:'
  2267.      SETATTR [Object] <Name> [Field] <Name> [Stem <Name>] [Var <Name>]
  2268.  
  2269. `Template:'
  2270.      OBJECT/A,FIELD,STEM/K,VAR
  2271.  
  2272. `Purpose:'
  2273.      Sets a certain application attribute.
  2274.  
  2275. `Specifications:'
  2276.      Sets a certain application attribute, retrieves the information
  2277.      from the supplied stem or simple variable. For a list of valid
  2278.      attributes, see the section entitled Attributes.
  2279.  
  2280. `Result:'
  2281.      -
  2282.  
  2283. `Warning:'
  2284.      -
  2285.  
  2286. `Example:'
  2287.           /* Set the transfer speed. */
  2288.           
  2289.           SETATTR serialprefs baudrate 2400
  2290.  
  2291. The SPEAK command
  2292. =================
  2293.  
  2294. `Format:'
  2295.      SPEAK [Text] <Text>
  2296.  
  2297. `Template:'
  2298.      TEXT/A/F
  2299.  
  2300. `Purpose:'
  2301.      Speaks the provided text using the Amiga speech synthesizer.
  2302.  
  2303. `Specifications:'
  2304.      Speaks the provided text using the Amiga speech synthesizer,
  2305.      requires that speech support is enabled.
  2306.  
  2307. `Result:'
  2308.      -
  2309.  
  2310. `Warning:'
  2311.      -
  2312.  
  2313. `Example:'
  2314.           /* Say something sensible. */
  2315.           
  2316.           SPEAK 'something sensible'
  2317.  
  2318. The STOPBITS command
  2319. ====================
  2320.  
  2321. `Format:'
  2322.      STOPBITS [0|1]
  2323.  
  2324. `Template:'
  2325.      0/S,1/S
  2326.  
  2327. `Purpose:'
  2328.      Sets the serial line stop bits.
  2329.  
  2330. `Specifications:'
  2331.      Sets the serial line stop bits.
  2332.  
  2333. `Result:'
  2334.      -
  2335.  
  2336. `Warning:'
  2337.      -
  2338.  
  2339. `Example:'
  2340.           /* Set the serial line stop bits. */
  2341.           
  2342.           STOPBITS 1
  2343.  
  2344. The TEXTBUFFER command
  2345. ======================
  2346.  
  2347. `Format:'
  2348.      TEXTBUFFER [Lock|Unlock]
  2349.  
  2350. `Template:'
  2351.      LOCK/S,UNLOCK/S
  2352.  
  2353. `Purpose:'
  2354.      Locks or unlocks the text buffer contents.
  2355.  
  2356. `Specifications:'
  2357.      Locks or unlocks the text buffer contents, similar to the effect
  2358.      of the corresponding main menu entry.
  2359.  
  2360. `Result:'
  2361.      -
  2362.  
  2363. `Warning:'
  2364.      -
  2365.  
  2366. `Example:'
  2367.           /* Lock the text buffer. */
  2368.           
  2369.           TEXTBUFFER LOCK
  2370.  
  2371. The TIMEOUT command
  2372. ===================
  2373.  
  2374. `Format:'
  2375.      TIMEOUT [[Sec|Seconds] <Number>] [Off]
  2376.  
  2377. `Template:'
  2378.      SEC=SECONDS/N,OFF/S
  2379.  
  2380. `Purpose:'
  2381.      Sets the serial read timeout.
  2382.  
  2383. `Specifications:'
  2384.      Sets the timeout the WAIT and READ commands will wait until they
  2385.      exit.
  2386.  
  2387. `Result:'
  2388.      -
  2389.  
  2390. `Warning:'
  2391.      -
  2392.  
  2393. `Example:'
  2394.           /* Set the read timeout. */
  2395.           
  2396.           TIMEOUT SEC 5
  2397.  
  2398. The TRAP command
  2399. ================
  2400.  
  2401. `Format:'
  2402.      TRAP <On|Off>
  2403.  
  2404. `Template:'
  2405.      ON/S,OFF/S
  2406.  
  2407. `Purpose:'
  2408.      Turns the trap list processing on or off.
  2409.  
  2410. `Specifications:'
  2411.      This command tells the main program whether it should process
  2412.      entries of the trap list when filtering input or not.
  2413.  
  2414. `Result:'
  2415.      -
  2416.  
  2417. `Warning:'
  2418.      -
  2419.  
  2420. `Example:'
  2421.           /* Ignore the trap list. */
  2422.           
  2423.           TRAP OFF
  2424.  
  2425. The WAIT command
  2426. ================
  2427.  
  2428. `Format:'
  2429.      WAIT [Noecho] [[Text] <Text>]
  2430.  
  2431. `Template:'
  2432.      NOECHO/S,TEXT/F
  2433.  
  2434. `Purpose:'
  2435.      Waits for a certain sequence of characters to be received from the
  2436.      serial line.
  2437.  
  2438. `Specifications:'
  2439.      Wait for text to be received from the serial line. If no text to
  2440.      wait for is provided wait for either item of the wait list to
  2441.      appear. The `Noecho' parameter suppresses terminal output. *Note
  2442.      that text comparison does not consider the case of characters (in
  2443.      respect to the ECMA Latin 1 character set).*
  2444.  
  2445. `Result:'
  2446.      Returns the string found.
  2447.  
  2448. `Warning:'
  2449.      If timeout has elapsed before any matching text was received.
  2450.  
  2451. `Example:'
  2452.           /* Enable command results. */
  2453.           
  2454.           OPTIONS RESULTS
  2455.           
  2456.           /* Set the read timeout. */
  2457.           
  2458.           TIMEOUT SEC 30
  2459.           
  2460.           /* Wait for a single line of text. */
  2461.           
  2462.           WAIT 'some text'
  2463.           
  2464.           /* Clear the wait list, add a few items. */
  2465.           
  2466.           CLEAR wait
  2467.           ADDITEM TO wait NAME 'foo'
  2468.           ADDITEM TO wait NAME 'bar'
  2469.           
  2470.           /* Wait for the text to appear. */
  2471.           
  2472.           WAIT
  2473.           
  2474.           /* Output the result. */
  2475.           
  2476.           IF rc ~= 0 THEN
  2477.              SAY 'no text was received'
  2478.           ELSE
  2479.              SAY result
  2480.  
  2481. The WINDOW command
  2482. ==================
  2483.  
  2484. `Format:'
  2485.      WINDOW [Names] {<Buffer|Review|Packet|Fastmacros|
  2486.      Status|Main|UploadQueue>} [Open|Close] [Activate] [Min|Max]
  2487.      [Front|Back] [Top|Bottom|Up|Down]
  2488.  
  2489. `Template:'
  2490.      NAMES/A/M,OPEN/S,CLOSE/S,ACTIVATE/S,MIN/S,MAX/S,FRONT/S,BACK/S,
  2491.      TOP/S,BOTTOM/S,UP/S,DOWN/S
  2492.  
  2493. `Purpose:'
  2494.      Manipulates the aspects of a window.
  2495.  
  2496. `Specifications:'
  2497.      Manipulates the aspects of a window. Not all windows will support
  2498.      all available commands. The windows supported are:
  2499.  
  2500.     `Buffer'
  2501.           The text buffer window and screen. Supports the `Open',
  2502.           `Close', `Activate' and `Front' commands.
  2503.  
  2504.     `Review'
  2505.           The review window. Supports the `Open', `Close', `Activate',
  2506.           `Min', `Max', `Front', `Back', `Top', `Bottom', `Up', and
  2507.           `Down' commands.
  2508.  
  2509.     `Packet'
  2510.           The packet window. Supports the `Open', `Close', `Activate',
  2511.           `Min', `Max', `Front' and `Back' commands.
  2512.  
  2513.     `Fastmacros'
  2514.           The fast! macro window. Supports the `Open', `Close',
  2515.           `Activate', `Min', `Max', `Front' and `Back' commands.
  2516.  
  2517.     `Status'
  2518.           The status window. Supports the `Open', `Close', `Activate',
  2519.           `Front' and `Back' commands.
  2520.  
  2521.     `Main'
  2522.           The main program window. Supports the `Open', `Close',
  2523.           `Activate', `Front' and `Back' commands.
  2524.  
  2525. `Result:'
  2526.      -
  2527.  
  2528. `Warning:'
  2529.      -
  2530.  
  2531. `Example:'
  2532.           /* Open all available windows. */
  2533.           
  2534.           WINDOW buffer review packet fastmacros status main OPEN
  2535.  
  2536. Attributes
  2537. **********
  2538.  
  2539.    Several of the application's internal variables are can be accessed
  2540. and modified using the GETATTR and SETATTR commands. Information is
  2541. available on the objects and their associated fields explained below.
  2542. Each line consists of the object and field name and the type of the
  2543. available data:
  2544.  
  2545. `Numeric data'
  2546.     `<Object>.<Field>'
  2547.           Numeric
  2548.  
  2549.      The information is a numeric value.
  2550.  
  2551. `Text data'
  2552.     `<Object>.<Field>'
  2553.           Text
  2554.  
  2555.      The information is a text string.
  2556.  
  2557. `Boolean data'
  2558.     `<Object>.<Field>'
  2559.           Boolean
  2560.  
  2561.      The information is a boolean value and can be `ON' or `OFF'.
  2562.  
  2563. `Mapped codes'
  2564.     `<Object>.<Field>'
  2565.           <Value 1> ... <Value n>
  2566.  
  2567.      The information can be one of the given values.
  2568.  
  2569. The TERM object (read-only)
  2570. ===========================
  2571.  
  2572. `TERM.VERSION'
  2573.      Text
  2574.  
  2575.      The `term' program revision.
  2576.  
  2577. `TERM.SCREEN'
  2578.      Text
  2579.  
  2580.      The name of the public screen the `term' main window has been
  2581.      opened on.
  2582.  
  2583. `TERM.SESSION.ONLINE'
  2584.      Boolean
  2585.  
  2586.      Whether the program is currently online or not.
  2587.  
  2588. `TERM.SESSION.SESSIONSTART'
  2589.      Text
  2590.  
  2591.      Time and date when the `term' program was started.
  2592.  
  2593. `TERM.SESSION.BYTESSENT'
  2594.      Numeric
  2595.  
  2596. `TERM.SESSION.BYTESRECEIVED'
  2597.      Numeric
  2598.  
  2599. `TERM.SESSION.CONNECTMESSAGE'
  2600.      Text
  2601.  
  2602.      The message issued by the modem when the connection was
  2603.      established.
  2604.  
  2605. `TERM.SESSION.BBSNAME'
  2606.      Text
  2607.  
  2608. `TERM.SESSION.BBSNUMBER'
  2609.      Text
  2610.  
  2611. `TERM.SESSION.BBSCOMMENT'
  2612.      Text
  2613.  
  2614. `TERM.SESSION.USERNAME'
  2615.      Text
  2616.  
  2617. `TERM.SESSION.ONLINEMINUTES'
  2618.      Numeric
  2619.  
  2620.      The number of minutes the program is currently connected to a BBS.
  2621.  
  2622. `TERM.SESSION.ONLINECOST'
  2623.      Numeric
  2624.  
  2625.      The cost of the connection to the BBS.
  2626.  
  2627. `TERM.AREXX'
  2628.      Text
  2629.  
  2630.      The name of the ARexx host port the program is communicating with.
  2631.  
  2632. `TERM.LASTERROR'
  2633.      Numeric
  2634.  
  2635.      The code corresponding to the error the last command has caused.
  2636.  
  2637. `TERM.TERMINAL.ROWS'
  2638.      Numeric
  2639.  
  2640.      The number of available terminal screen rows.
  2641.  
  2642. `TERM.TERMINAL.COLUMNS'
  2643.      Numeric
  2644.  
  2645.      The number of available terminal screen columns.
  2646.  
  2647. `TERM.BUFFER.SIZE'
  2648.      Numeric
  2649.  
  2650.      The size of the text buffer.
  2651.  
  2652. The PHONEBOOK object (read-only)
  2653. ================================
  2654.  
  2655.    Available fields are:
  2656.  
  2657. `PHONEBOOK.COUNT'
  2658.      Numeric
  2659.  
  2660.      The number of entries in the phonebook. The single phonebook
  2661.      entries can be accessed as `PHONEBOOK.0...' through
  2662.      `PHONEBOOK.n-1...'.
  2663.  
  2664. `PHONEBOOK.n.NAME'
  2665.      Text
  2666.  
  2667. `PHONEBOOK.n.NUMBER'
  2668.      Text
  2669.  
  2670. `PHONEBOOK.n.COMMENTTEXT'
  2671.      Text
  2672.  
  2673. `PHONEBOOK.n.USERNAME'
  2674.      Text
  2675.  
  2676. `PHONEBOOK.n.PASSWORDTEXT'
  2677.      Text
  2678.  
  2679. The SERIALPREFS object
  2680. ======================
  2681.  
  2682.    Available fields are:
  2683.  
  2684. `SERIALPREFS.BAUDRATE'
  2685.      Numeric
  2686.  
  2687. `SERIALPREFS.BREAKLENGTH'
  2688.      Numeric
  2689.  
  2690.      The break signal length in microseconds.
  2691.  
  2692. `SERIALPREFS.BUFFERSIZE'
  2693.      Numeric
  2694.  
  2695. `SERIALPREFS.DEVICENAME'
  2696.      Text
  2697.  
  2698. `SERIALPREFS.UNIT'
  2699.      Numeric
  2700.  
  2701. `SERIALPREFS.BITSPERCHAR'
  2702.      Numeric
  2703.  
  2704.      The number of bits per transferred char. This can be either seven
  2705.      or eight.
  2706.  
  2707. `SERIALPREFS.PARITYMODE'
  2708.      `NONE' `EVEN' `ODD' `MARK' `SPACE'.
  2709.  
  2710. `SERIALPREFS.STOPBITS'
  2711.      Numeric
  2712.  
  2713.      The number of stop bits to be used. This can be either 0 or 1.
  2714.  
  2715. `SERIALPREFS.HANDSHAKINGMODE'
  2716.      `NONE' `RTSCTS' `RTSCTSDSR'
  2717.  
  2718. `SERIALPREFS.DUPLEXMODE'
  2719.      `HALF' `FULL'
  2720.  
  2721. `SERIALPREFS.XONXOFF'
  2722.      Boolean
  2723.  
  2724. `SERIALPREFS.HIGHSPEED'
  2725.      Boolean
  2726.  
  2727. `SERIALPREFS.SHARED'
  2728.      Boolean
  2729.  
  2730. `SERIALPREFS.STRIPBIT8'
  2731.      Boolean
  2732.  
  2733. `SERIALPREFS.CARRIERCHECK'
  2734.      Boolean
  2735.  
  2736. `SERIALPREFS.PASSXONXOFFTHROUGH'
  2737.      Boolean
  2738.  
  2739. `SERIALPREFS.QUANTUM'
  2740.      Numeric
  2741.  
  2742. `SERIALPREFS.USEOWNDEVUNIT'
  2743.      Boolean
  2744.  
  2745. The MODEMPREFS object
  2746. =====================
  2747.  
  2748.    Available fields are:
  2749.  
  2750. `MODEMPREFS.MODEMINITTEXT'
  2751.      Text
  2752.  
  2753. `MODEMPREFS.MODEMEXITTEXT'
  2754.      Text
  2755.  
  2756. `MODEMPREFS.MODEMHANGUPTEXT'
  2757.      Text
  2758.  
  2759. `MODEMPREFS.DIALPREFIXTEXT'
  2760.      Text
  2761.  
  2762. `MODEMPREFS.DIALSUFFIXTEXT'
  2763.      Text
  2764.  
  2765. `MODEMPREFS.NOCARRIERTEXT'
  2766.      Text
  2767.  
  2768. `MODEMPREFS.NODIALTONETEXT'
  2769.      Text
  2770.  
  2771. `MODEMPREFS.CONNECTTEXT'
  2772.      Text
  2773.  
  2774. `MODEMPREFS.VOICETEXT'
  2775.      Text
  2776.  
  2777. `MODEMPREFS.RINGTEXT'
  2778.      Text
  2779.  
  2780. `MODEMPREFS.BUSYTEXT'
  2781.      Text
  2782.  
  2783. `MODEMPREFS.OKTEXT'
  2784.      Text
  2785.  
  2786. `MODEMPREFS.ERRORTEXT'
  2787.      Text
  2788.  
  2789. `MODEMPREFS.REDIALDELAY'
  2790.      Numeric
  2791.  
  2792.      The redial delay in seconds
  2793.  
  2794. `MODEMPREFS.DIALRETRIES'
  2795.      Numeric
  2796.  
  2797. `MODEMPREFS.DIALTIMEOUT'
  2798.      Numeric
  2799.  
  2800.      The dial timeout in seconds
  2801.  
  2802. `MODEMPREFS.CONNECTAUTOBAUD'
  2803.      Boolean
  2804.  
  2805. `MODEMPREFS.HANGUPDROPSDTR'
  2806.      Boolean
  2807.  
  2808. `MODEMPREFS.REDIALAFTERHANGUP'
  2809.      Boolean
  2810.  
  2811. `MODEMPREFS.NOCARRIERISBUSY'
  2812.      Boolean
  2813.  
  2814. `MODEMPREFS.CONNECTLIMIT'
  2815.      Numeric
  2816.  
  2817.      Time limit in minutes.
  2818.  
  2819. `MODEMPREFS.CONNECTLIMITMACRO'
  2820.      Text
  2821.  
  2822. `MODEMPREFS.TIMETOCONNECT'
  2823.      Numeric
  2824.  
  2825. The SCREENPREFS object
  2826. ======================
  2827.  
  2828.    Available fields are:
  2829.  
  2830. `SCREENPREFS.COLOURMODE'
  2831.      `TWO' `FOUR' `EIGHT' `SIXTEEN'
  2832.  
  2833. `SCREENPREFS.FONTNAME'
  2834.      Text
  2835.  
  2836. `SCREENPREFS.FONTSIZE'
  2837.      Numeric
  2838.  
  2839. `SCREENPREFS.MAKESCREENPUBLIC'
  2840.      Boolean
  2841.  
  2842. `SCREENPREFS.SHANGHAIWINDOWS'
  2843.      Boolean
  2844.  
  2845. `SCREENPREFS.BLINKING'
  2846.      Boolean
  2847.  
  2848. `SCREENPREFS.FASTERLAYOUT'
  2849.      Boolean
  2850.  
  2851. `SCREENPREFS.TITLEBAR'
  2852.      Boolean
  2853.  
  2854. `SCREENPREFS.STATUSLINEMODE'
  2855.      `DISABLED' `STANDARD' `COMPRESSED'
  2856.  
  2857. `SCREENPREFS.USEPUBSCREEN'
  2858.      Boolean
  2859.  
  2860. `SCREENPREFS.PUBSCREENNAME'
  2861.      Text
  2862.  
  2863. `SCREENPREFS.USEPENS'
  2864.      Boolean
  2865.  
  2866. `SCREENPREFS.WINDOWBORDER'
  2867.      Boolean
  2868.  
  2869. `SCREENPREFS.SPLITSTATUS'
  2870.      Boolean
  2871.  
  2872. `SCREENPREFS.ONLINEDISPLAY'
  2873.      `TIME' `COST' `BOTH'
  2874.  
  2875. The TERMINALPREFS object
  2876. ========================
  2877.  
  2878.    Available fields are:
  2879.  
  2880. `TERMINALPREFS.BELLMODE'
  2881.      `NONE' `VISIBLE' `AUDIBLE' `BOTH' `SYSTEM'
  2882.  
  2883. `TERMINALPREFS.ALERTMODE'
  2884.      `NONE' `BELL' `SCREEN' `BOTH'
  2885.  
  2886. `TERMINALPREFS.EMULATIONMODE'
  2887.      `INTERNAL' `ATOMIC' `TTY' `EXTERNAL' `HEX'
  2888.  
  2889. `TERMINALPREFS.FONTMODE'
  2890.      `STANDARD' `IBM' `IBMRAW'
  2891.  
  2892. `TERMINALPREFS.SENDCRMODE'
  2893.      `IGNORE' `CR' `CRLF'
  2894.  
  2895. `TERMINALPREFS.SENDLFMODE'
  2896.      `IGNORE' `LF' `LFCR'
  2897.  
  2898. `TERMINALPREFS.RECEIVECRMODE'
  2899.      `IGNORE' `CR' `CRLF'
  2900.  
  2901. `TERMINALPREFS.RECEIVELFMODE'
  2902.      `IGNORE' `LF' `LFCR'
  2903.  
  2904. `TERMINALPREFS.NUMCOLUMNS'
  2905.      Numeric
  2906.  
  2907. `TERMINALPREFS.NUMLINES'
  2908.      Numeric
  2909.  
  2910. `TERMINALPREFS.KEYMAPNAME'
  2911.      Text
  2912.  
  2913. `TERMINALPREFS.EMULATIONNAME'
  2914.      Text
  2915.  
  2916. `TERMINALPREFS.FONTNAME'
  2917.      Text
  2918.  
  2919. `TERMINALPREFS.FONTSIZE'
  2920.      Numeric
  2921.  
  2922. `TERMINALPREFS.USETERMINALPROCESS'
  2923.      Boolean
  2924.  
  2925. The EMULATIONPREFS object
  2926. =========================
  2927.  
  2928.    Available fields are:
  2929.  
  2930. `EMULATIONPREFS.CURSORMODE'
  2931.      `STANDARD' `APPLICATION'
  2932.  
  2933. `EMULATIONPREFS.NUMERICMODE'
  2934.      `STANDARD' `APPLICATION'
  2935.  
  2936. `EMULATIONPREFS.CURSORWRAP'
  2937.      Boolean
  2938.  
  2939. `EMULATIONPREFS.LINEWRAP'
  2940.      Boolean
  2941.  
  2942. `EMULATIONPREFS.INSERTMODE'
  2943.      Boolean
  2944.  
  2945. `EMULATIONPREFS.NEWLINEMODE'
  2946.      Boolean
  2947.  
  2948. `EMULATIONPREFS.FONTSCALEMODE'
  2949.      `NORMAL' `HALF'
  2950.  
  2951. `EMULATIONPREFS.SCROLLMODE'
  2952.      `JUMP' `SMOOTH'
  2953.  
  2954. `EMULATIONPREFS.DESTRUCTIVEBACKSPACE'
  2955.      `OFF' `OVERSTRIKE' `OVERSTRIKESHIFT'
  2956.  
  2957. `EMULATIONPREFS.SWAPBSDELETE'
  2958.      Boolean
  2959.  
  2960. `EMULATIONPREFS.PRINTERENABLED'
  2961.      Boolean
  2962.  
  2963. `EMULATIONPREFS.ANSWERBACKTEXT'
  2964.      Text
  2965.  
  2966. `EMULATIONPREFS.CLSRESETSCURSOR'
  2967.      Boolean
  2968.  
  2969. `EMULATIONPREFS.NUMPADLOCKED'
  2970.      Boolean
  2971.  
  2972. `EMULATIONPREFS.CURSORLOCKED'
  2973.      Boolean
  2974.  
  2975. `EMULATIONPREFS.FONTLOCKED'
  2976.      Boolean
  2977.  
  2978. `EMULATIONPREFS.MAXPRESCROLL'
  2979.      Numeric
  2980.  
  2981. `EMULATIONPREFS.MAXJUMP'
  2982.      Numeric
  2983.  
  2984. The CLIPBOARDPREFS object
  2985. =========================
  2986.  
  2987.    Available fields are:
  2988.  
  2989. `CLIPBOARDPREFS.UNIT'
  2990.      Numeric
  2991.  
  2992. `CLIPBOARDPREFS.LINEDELAY'
  2993.      Numeric
  2994.  
  2995.      Paste line delay in 1/100 seconds.
  2996.  
  2997. `CLIPBOARDPREFS.CHARDELAY'
  2998.      Numeric
  2999.  
  3000.      Paste character delay in 1/100 seconds.
  3001.  
  3002. `CLIPBOARDPREFS.LINEPROMPTTEXT'
  3003.      Text
  3004.  
  3005. `CLIPBOARDPREFS.SENDTIMEOUT'
  3006.      Numeric
  3007.  
  3008.      Timeout in 1/100 seconds.
  3009.  
  3010. `CLIPBOARDPREFS.TEXTPACING'
  3011.      `DIRECT' `ECHO' `ANYECHO' `PROMPT' `DELAY' `KEYBOARD'
  3012.  
  3013. `CLIPBOARDPREFS.INSERTPREFIXTEXT'
  3014.      Text
  3015.  
  3016. `CLIPBOARDPREFS.INSERTSUFFIXTEXT'
  3017.      Text
  3018.  
  3019. The CAPTUREPREFS object
  3020. =======================
  3021.  
  3022.    Available fields are:
  3023.  
  3024. `CAPTUREPREFS.LOGACTIONS'
  3025.      Boolean
  3026.  
  3027. `CAPTUREPREFS.LOGFILENAME'
  3028.      Text
  3029.  
  3030. `CAPTUREPREFS.LOGCALLS'
  3031.      Boolean
  3032.  
  3033. `CAPTUREPREFS.CALLLOGFILENAME'
  3034.      Text
  3035.  
  3036. `CAPTUREPREFS.MAXBUFFERSIZE'
  3037.      Numeric
  3038.  
  3039. `CAPTUREPREFS.BUFFER'
  3040.      Boolean
  3041.  
  3042. `CAPTUREPREFS.BUFFERSAVEPATH'
  3043.      Text
  3044.  
  3045. `CAPTUREPREFS.CONNECTAUTOCAPTURE'
  3046.      Boolean
  3047.  
  3048. `CAPTUREPREFS.AUTOCAPTUREDATE'
  3049.      `NAME', `INCLUDE'
  3050.  
  3051. `CAPTUREPREFS.CAPTUREFILTER'
  3052.      Boolean
  3053.  
  3054. `CAPTUREPREFS.CAPTUREPATH'
  3055.      Text
  3056.  
  3057. `CAPTUREPREFS.OPENBUFFERWINDOW'
  3058.      `TOP', `END'
  3059.  
  3060. `CAPTUREPREFS.REMEMBERBUFFERWINDOW'
  3061.      Boolean
  3062.  
  3063. `CAPTUREPREFS.OPENBUFFERSCREEN'
  3064.      `TOP', `END'
  3065.  
  3066. `CAPTUREPREFS.REMEMBERBUFFERSCREEN'
  3067.      Boolean
  3068.  
  3069. `CAPTUREPREFS.BUFFERSCREENPOSITION'
  3070.      `LEFT', `MID', `RIGHT'
  3071.  
  3072. `CAPTUREPREFS.BUFFERWIDTH'
  3073.      Numeric
  3074.  
  3075. `CAPTUREPREFS.SEARCHHISTORY'
  3076.      Numeric
  3077.  
  3078. The COMMANDPREFS object
  3079. =======================
  3080.  
  3081.    Available fields are:
  3082.  
  3083. `COMMANDPREFS.STARTUPMACROTEXT'
  3084.      Text
  3085.  
  3086. `COMMANDPREFS.LOGINMACROTEXT'
  3087.      Text
  3088.  
  3089. `COMMANDPREFS.LOGOFFMACROTEXT'
  3090.      Text
  3091.  
  3092. `COMMANDPREFS.UPLOADMACROTEXT'
  3093.      Text
  3094.  
  3095. `COMMANDPREFS.DOWNLOADMACROTEXT'
  3096.      Text
  3097.  
  3098. The MISCPREFS object
  3099. ====================
  3100.  
  3101.    Available fields are:
  3102.  
  3103. `MISCPREFS.PRIORITY'
  3104.      Numeric
  3105.  
  3106. `MISCPREFS.BACKUPCONFIG'
  3107.      Boolean
  3108.  
  3109. `MISCPREFS.OPENFASTMACROPANEL'
  3110.      Boolean
  3111.  
  3112. `MISCPREFS.RELEASEDEVICE'
  3113.      Boolean
  3114.  
  3115. `MISCPREFS.OVERRIDEPATH'
  3116.      Boolean
  3117.  
  3118. `MISCPREFS.AUTOUPLOAD'
  3119.      Boolean
  3120.  
  3121. `MISCPREFS.SETARCHIVEDBIT'
  3122.      Boolean
  3123.  
  3124. `MISCPREFS.COMMENTMODE'
  3125.      `IGNORE' `FILETYPE' `SOURCE'
  3126.  
  3127. `MISCPREFS.TRANSFERICONS'
  3128.      Boolean
  3129.  
  3130. `MISCPREFS.CREATEICONS'
  3131.      Boolean
  3132.  
  3133. `MISCPREFS.SIMPLEIO'
  3134.      Boolean
  3135.  
  3136. `MISCPREFS.TRANSFERPERFMETER'
  3137.      Boolean
  3138.  
  3139. `MISCPREFS.IOBUFFERSIZE'
  3140.      Numeric
  3141.  
  3142. The PATHPREFS object
  3143. ====================
  3144.  
  3145.    Available fields are:
  3146.  
  3147. `PATHPREFS.ASCIIUPLOADPATH'
  3148.      Text
  3149.  
  3150. `PATHPREFS.ASCIIDOWNLOADPATH'
  3151.      Text
  3152.  
  3153. `PATHPREFS.TEXTUPLOADPATH'
  3154.      Text
  3155.  
  3156. `PATHPREFS.TEXTDOWNLOADPATH'
  3157.      Text
  3158.  
  3159. `PATHPREFS.BINARYUPLOADPATH'
  3160.      Text
  3161.  
  3162. `PATHPREFS.BINARYDOWNLOADPATH'
  3163.      Text
  3164.  
  3165. `PATHPREFS.CONFIGPATH'
  3166.      Text
  3167.  
  3168. `PATHPREFS.EDITORNAME'
  3169.      Text
  3170.  
  3171. `PATHPREFS.HELPFILENAME'
  3172.      Text
  3173.  
  3174. The TRANSFERPREFS object
  3175. ========================
  3176.  
  3177.    Available fields are:
  3178.  
  3179. `TRANSFERPREFS.DEFAULTLIBRARY'
  3180.      Text
  3181.  
  3182. `TRANSFERPREFS.ASCIIUPLOADLIBRARY'
  3183.      Text
  3184.  
  3185. `TRANSFERPREFS.INTERNALASCIIUPLOAD'
  3186.      Boolean
  3187.  
  3188. `TRANSFERPREFS.ASCIIDOWNLOADLIBRARY'
  3189.      Text
  3190.  
  3191. `TRANSFERPREFS.INTERNALASCIIDOWNLOAD'
  3192.      Boolean
  3193.  
  3194. `TRANSFERPREFS.QUIETTRANSFER'
  3195.      Boolean
  3196.  
  3197. `TRANSFERPREFS.MANGLEFILENAMES'
  3198.      Boolean
  3199.  
  3200. `TRANSFERPREFS.LINEDELAY'
  3201.      Numeric
  3202.  
  3203. `TRANSFERPREFS.CHARDELAY'
  3204.      Numeric
  3205.  
  3206. `TRANSFERPREFS.LINEPROMPTTEXT'
  3207.      Text
  3208.  
  3209. `TRANSFERPREFS.TEXTPACING'
  3210.      `DIRECT' `ECHO' `ANYECHO' `PROMPT' `DELAY' `KEYBOARD'
  3211.  
  3212. `TRANSFERPREFS.SENDTIMEOUT'
  3213.      Numeric
  3214.  
  3215. `TRANSFERPREFS.STRIPBIT8'
  3216.      Boolean
  3217.  
  3218. `TRANSFERPREFS.IGNOREDATAPASTTERMINATOR'
  3219.      Boolean
  3220.  
  3221. `TRANSFERPREFS.TERMINATORCHAR'
  3222.      Numeric
  3223.  
  3224. `TRANSFERPREFS.TEXTUPLOADLIBRARY'
  3225.      Text
  3226.  
  3227. `TRANSFERPREFS.TEXTDOWNLOADLIBRARY'
  3228.      Text
  3229.  
  3230. `TRANSFERPREFS.BINARYUPLOADLIBRARY'
  3231.      Text
  3232.  
  3233. `TRANSFERPREFS.BINARYDOWNLOADLIBRARY'
  3234.      Text
  3235.  
  3236. The PROTOCOLPREFS object
  3237. ========================
  3238.  
  3239.    This object features no fields, it contains a single line of text:
  3240. the XPR protocol options.
  3241.  
  3242. The TRANSLATIONPREFS object
  3243. ===========================
  3244.  
  3245.    Indices referring to the ascii codes range from 0 to 255, available
  3246. fields are:
  3247.  
  3248. `TRANSLATIONPREFS.n.SEND'
  3249.      Text
  3250.  
  3251. `TRANSLATIONPREFS.n.RECEIVE'
  3252.      Text
  3253.  
  3254. The FUNCTIONKEYPREFS object
  3255. ===========================
  3256.  
  3257.    Key indices range from 1 to 10 (representing F1 through F10),
  3258. available fields are:
  3259.  
  3260. `FUNCTIONKEYPREFS.n'
  3261.      Text
  3262.  
  3263. `FUNCTIONKEYPREFS.SHIFT.n'
  3264.      Text
  3265.  
  3266. `FUNCTIONKEYPREFS.ALT.n'
  3267.      Text
  3268.  
  3269. `FUNCTIONKEYPREFS.CONTROL.n'
  3270.      Text
  3271.  
  3272. The CURSORKEYPREFS object
  3273. =========================
  3274.  
  3275.    Available fields are:
  3276.  
  3277. `CURSORKEYPREFS.UPTEXT'
  3278.      Text
  3279.  
  3280. `CURSORKEYPREFS.RIGHTTEXT'
  3281.      Text
  3282.  
  3283. `CURSORKEYPREFS.DOWNTEXT'
  3284.      Text
  3285.  
  3286. `CURSORKEYPREFS.LEFTTEXT'
  3287.      Text
  3288.  
  3289. `CURSORKEYPREFS.SHIFT.UPTEXT'
  3290.      Text
  3291.  
  3292. `CURSORKEYPREFS.SHIFT.RIGHTTEXT'
  3293.      Text
  3294.  
  3295. `CURSORKEYPREFS.SHIFT.DOWNTEXT'
  3296.      Text
  3297.  
  3298. `CURSORKEYPREFS.SHIFT.LEFTTEXT'
  3299.      Text
  3300.  
  3301. `CURSORKEYPREFS.ALT.UPTEXT'
  3302.      Text
  3303.  
  3304. `CURSORKEYPREFS.ALT.RIGHTTEXT'
  3305.      Text
  3306.  
  3307. `CURSORKEYPREFS.ALT.DOWNTEXT'
  3308.      Text
  3309.  
  3310. `CURSORKEYPREFS.ALT.LEFTTEXT'
  3311.      Text
  3312.  
  3313. `CURSORKEYPREFS.CONTROL.UPTEXT'
  3314.      Text
  3315.  
  3316. `CURSORKEYPREFS.CONTROL.RIGHTTEXT'
  3317.      Text
  3318.  
  3319. `CURSORKEYPREFS.CONTROL.DOWNTEXT'
  3320.      Text
  3321.  
  3322. `CURSORKEYPREFS.CONTROL.LEFTTEXT'
  3323.      Text
  3324.  
  3325. The FASTMACROPREFS object
  3326. =========================
  3327.  
  3328. `FASTMACROPREFS.COUNT'
  3329.      Numeric
  3330.  
  3331.      The number of fast macros available, entries range from
  3332.      `FASTMACROPREFS.0...' to `FASTMACROPREFS.n-1...'
  3333.  
  3334. `FASTMACROPREFS.n.NAME'
  3335.      Text
  3336.  
  3337. `FASTMACROPREFS.n.CODE'
  3338.      Text
  3339.  
  3340. The HOTKEYPREFS object
  3341. ======================
  3342.  
  3343.    Available fields are:
  3344.  
  3345. `HOTKEYPREFS.TERMSCREENTOFRONTTEXT'
  3346.      Text
  3347.  
  3348. `HOTKEYPREFS.BUFFERSCREENTOFRONTTEXT'
  3349.      Text
  3350.  
  3351. `HOTKEYPREFS.SKIPDIALENTRYTEXT'
  3352.      Text
  3353.  
  3354. `HOTKEYPREFS.ABORTAREXX'
  3355.      Text
  3356.  
  3357. `HOTKEYPREFS.COMMODITYPRIORITY'
  3358.      Numeric
  3359.  
  3360. `HOTKEYPREFS.HOTKEYSENABLED'
  3361.      Boolean
  3362.  
  3363. The SPEECHPREFS object
  3364. ======================
  3365.  
  3366.    Available fields are:
  3367.  
  3368. `SPEECHPREFS.RATE'
  3369.      Numeric
  3370.  
  3371. `SPEECHPREFS.PITCH'
  3372.      Numeric
  3373.  
  3374. `SPEECHPREFS.FREQUENCY'
  3375.      Numeric
  3376.  
  3377. `SPEECHPREFS.SEXMODE'
  3378.      `MALE' `FEMALE'
  3379.  
  3380. `SPEECHPREFS.VOLUME'
  3381.      Numeric
  3382.  
  3383. `SPEECHPREFS.SPEECH'
  3384.      Boolean
  3385.  
  3386. The SOUNDPREFS object
  3387. =====================
  3388.  
  3389.    Available fields are:
  3390.  
  3391. `SOUNDPREFS.BELLNAME'
  3392.      Text
  3393.  
  3394. `SOUNDPREFS.CONNECTNAME'
  3395.      Text
  3396.  
  3397. `SOUNDPREFS.DISCONNECTNAME'
  3398.      Text
  3399.  
  3400. `SOUNDPREFS.GOODTRANSFERNAME'
  3401.      Text
  3402.  
  3403. `SOUNDPREFS.BADTRANSFERNAME'
  3404.      Text
  3405.  
  3406. `SOUNDPREFS.RINGNAME'
  3407.      Text
  3408.  
  3409. `SOUNDPREFS.VOICENAME'
  3410.      Text
  3411.  
  3412. `SOUNDPREFS.PRELOAD'
  3413.      Boolean
  3414.  
  3415. The CONSOLEPREFS object
  3416. =======================
  3417.  
  3418.    This object features no fields, it contains a single line of text:
  3419. the console output window specification.
  3420.  
  3421. The FILEPREFS object
  3422. ====================
  3423.  
  3424.    Available fields are:
  3425.  
  3426. `FILEPREFS.TRANSFERPROTOCOLNAME'
  3427.      Text
  3428.  
  3429. `FILEPREFS.TRANSLATIONFILENAME'
  3430.      Text
  3431.  
  3432. `FILEPREFS.MACROFILENAME'
  3433.      Text
  3434.  
  3435. `FILEPREFS.CURSORFILENAME'
  3436.      Text
  3437.  
  3438. `FILEPREFS.FASTMACROFILENAME'
  3439.      Text
  3440.  
  3441. Wanted!
  3442. *******
  3443.  
  3444.    As of this writing only a single example ARexx script is included in
  3445. the `term' distribution (see the `Rexx' drawer). However, it is
  3446. desirable to include more sample scripts so more users will be able to
  3447. take advantage of the ARexx interface.
  3448.  
  3449.    If you wish to share your scripts with the `term' user community,
  3450. send them (including documentation) to:
  3451.  
  3452.                              Olaf Barthel
  3453.                            Brabeckstrasse 35
  3454.                            D-30559 Hannover
  3455.  
  3456.                       Federal Republic of Germany
  3457.  
  3458.                     Internet: olsen@sourcery.han.de
  3459.